2013-01-16 22 views
5

Dies ist, was ich habe und kann den Schläger nicht ausführen, wenn ich den Schläger in einen Ordner ohne Leerzeichen in dem Namen verschiebe, funktioniert es. Mein Problem ist, dass die tatsächliche Fledermaus in einem Ordner mit Leerzeichen ist, also muss ich das funktionieren.VBS mit Leerzeichen im Dateipfad

Set objShell = WScript.CreateObject("WScript.Shell") 
objShell.Run("%comspec% /K C:\Program Files\ping.bat"), 1, True 

Antwort

4

Sie müssen die Dateispezifikation zitieren:

Run("%comspec% /K ""C:\Program Files\ping.bat""") 
+0

ich noch "C: \ Program" erhalten nicht erkannt Fehler. – WACs

+4

@WACs - dann haben Sie die Dateispezifikation nicht wie angegeben angegeben. –

0

Versuchen Sie dieses

Set objShell = WScript.CreateObject("WScript.Shell") 
strCommand = chr(34)&"%comspec% /K C:\Program Files\ping.bat"&chr(34) 
objShell.Run strCommand,1,True 
+0

Die Dateispezifikation muss zitiert werden, nicht der gesamte Befehl. –

-1

Ich weiß, dass dies eine alte Frage, aber fand ich ein Update, das funktioniert für mich .
Es sind die doppelten Anführungszeichen, die Sie brauchen.
unten Versuchen:

objShell.Run("%comspec% /K " & """C:\Program Files\ping.bat""""), 1, True); 
+0

Das letzte "ist falsch; das; ist Unsinn. –