evinben
Goto Top

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:
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

Content-Key: 189140

Url: https://administrator.de/contentid/189140

Printed on: April 25, 2024 at 16:04 o'clock

Member: bastla
bastla Aug 06, 2012 updated at 06:47:57 (UTC)
Goto Top
Hallo evinben!

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
Grüße
bastla
Member: evinben
evinben Aug 08, 2012 updated at 20:20:27 (UTC)
Goto Top
Hallo bastla!

Vielen Dank für deine Lösung, es klappt bestens...!

Gruß
evinben