我正在使用Command $表达式将应用程序从VB6迁移到VB.Net。
我的问题是:以下代码中VB6 Command $的“等效”是什么?
If InStr(UCase(Command$), "/BATCH") <> 0 Then ModeDeTraitement = "B"
If InStr(UCase(Command$), "/NUIT") <> 0 Then ModeDeTraitement = "N"
If InStr(UCase(Command$), "/SERIE") <> 0 Then ModeDeTraitement = "T"
'AAE 11/06/2018 : Gestion des séries (Lancement automatique)
'add ModeDeTraitement = "S"
If InStr(UCase(Command$), "/SERIE2") <> 0 Then
ModeDeTraitement = "S"
Opti_commande = supvalnull(CLng(Right(UCase(Command$), 6)))
End If
If InStr(UCase(Command$), "/LIGHT") <> 0 Then
ModeDeTraitement = "JL" 'dm 21/06/2018
Dim posD_start As Integer
Dim posD_end As Integer
posD_start = InStr(UCase(Command$), "<D>") + Len("<D>")
posD_end = InStr(UCase(Command$), "</D>")
Numero_Fac = Mid(Command$, posD_start, posD_end - posD_start)
'aae 04/09/2019 : Import nombre de pièces
If InStr(UCase(Command$), "<n>") > 0 Then
posD_start = InStr(UCase(Command$), "<n>") + Len("<n>")
posD_end = InStr(UCase(Command$), "</n>")
ParamOpti.NbPieces = Maxi(1, CInt(Mid(Command$, posD_start, posD_end - posD_start)))
End If
如果删除$,则会给我一个错误,即“ Command”是接口,不能用作表达式。
在您的代码示例中,Command$
根本不是VB6关键字或表达式。它只是一个变量。并且由于它的后缀为$
,因此可以说它是String变量。如果有内存,您应该能够右键单击该变量,然后选择“声明”,代码编辑器将跳至声明该变量的位置。
FYI,如评论中所述,这不准确。虽然是字符串,但不是常规变量。它包含用于启动可执行文件的命令行。