Im VB-Script prüfen, ob in den übergebenen Argumenten bestimmte Zechenfolge enthalten ist.
Prüfen, ob ein bestimmter Argument übergeben worden ist.
Da die Reihenfolge der Argumente nicht fest definiert ist, scheitert die Lösung mit der Prüfung nach seinem Nummer: If Wscript.Arguments.Item(0) = "NameDesZusuchendenArgumentes"
Hallo,
wie kann in VB-Script geprüft werden, ob ein bestimmtes Argument übergeben worden ist?
Konkret: um mit der Verarbeitung fortzufahren muss in meinem Fall erstmals geprüft werden, ob das Argument „CONNECTED M95“ dem VB-Script übergeben wurde.
Weiter geht es mit: wenn nicht dann eine Batch-Datei ausführen, wenn ja dann fortfahren.
Da das bestehende Skript mit und ohne Argumente ausgeführt wird, deren Reihenfolge nicht fest definiert ist, muss es in den allen übergebenen Argumenten nach der Zeichenkette „CONNECTED M95“ gesucht werden.
So würde es gut gehen, solange das geprüfte Argument immer an der gleichen Stelle ist:
Vielen Dank für paar Tipps!
Gruß
evinben
Da die Reihenfolge der Argumente nicht fest definiert ist, scheitert die Lösung mit der Prüfung nach seinem Nummer: If Wscript.Arguments.Item(0) = "NameDesZusuchendenArgumentes"
Hallo,
wie kann in VB-Script geprüft werden, ob ein bestimmtes Argument übergeben worden ist?
Konkret: um mit der Verarbeitung fortzufahren muss in meinem Fall erstmals geprüft werden, ob das Argument „CONNECTED M95“ dem VB-Script übergeben wurde.
Weiter geht es mit: wenn nicht dann eine Batch-Datei ausführen, wenn ja dann fortfahren.
Da das bestehende Skript mit und ohne Argumente ausgeführt wird, deren Reihenfolge nicht fest definiert ist, muss es in den allen übergebenen Argumenten nach der Zeichenkette „CONNECTED M95“ gesucht werden.
So würde es gut gehen, solange das geprüfte Argument immer an der gleichen Stelle ist:
Set WshShell = WScript.CreateObject("WScript.Shell")
If WScript.Arguments.Count => 1 Then
MsgBox "0. Argument: " & Wscript.Arguments.Item(0),, FensterTitel
If Wscript.Arguments.Item(0) <> " CONNECTED M95" Then
MsgBox " Wscript.Arguments.Item(0)",, FensterTitel
End if
Else
BatchFile = "D:\Connect.bat"
WshShell.Run """" & BatchFile & """" ,7
Wscript.Quit
End If
Vielen Dank für paar Tipps!
Gruß
evinben
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 189140
Url: https://administrator.de/forum/im-vb-script-pruefen-ob-in-den-uebergebenen-argumenten-bestimmte-zechenfolge-enthalten-ist-189140.html
Ausgedruckt am: 03.04.2025 um 17:04 Uhr
2 Kommentare
Neuester Kommentar
Hallo evinben!
Unter der Annahme, dass "WshNamed-Objects" für Dich keine Möglichkeit sind, einfach eine "
Grüße
bastla
Unter der Annahme, dass "WshNamed-Objects" für Dich keine Möglichkeit sind, einfach eine "
For Each
"-Schleife verwenden (ungetestet):For Each Arg In WScript.Armguments
If Arg = "CONNECTED M95" Then
ArgFound = True
Exit For
End If
Next
If Not ArgFound Then
BatchFile = "D:\Connect.bat"
WshShell.Run """" & BatchFile & """" ,7
WScript.Quit
End If
bastla