Gibt es eine Möglichkeit, eine Anwendung auszuführen, ohne in der Batch-Datei zu warten? Ich habe den start
Befehl ausprobiert, aber er erstellt nur ein neues Befehlsfenster.
Gibt es eine Möglichkeit, eine Anwendung auszuführen, ohne in der Batch-Datei zu warten? Ich habe den start
Befehl ausprobiert, aber er erstellt nur ein neues Befehlsfenster.
Antworten:
Ich mache hier eine Vermutung, aber Ihre start
Anrufung sieht wahrscheinlich so aus:
start "\Foo\Bar\Path with spaces in it\program.exe"
Dadurch wird ein neues Konsolenfenster geöffnet, in dem "\ Foo \ Bar \ Path mit Leerzeichen in der Datei \ program.exe" als Titel verwendet wird.
Wenn Sie start
etwas verwenden, das von Anführungszeichen umgeben ist (oder sein muss), müssen Sie als erstes Argument leere Anführungszeichen setzen:
start "" "\Foo\Bar\Path with spaces in it\program.exe"
Dies liegt daran start
, dass das erste zitierte Argument als Fenstertitel für ein neues Konsolenfenster interpretiert wird .
start "Obligatory Atavistic Window Title" "\Foo\Bar\Path with spaces in it\program.exe"
Wenn Ihre Exe Argumente nimmt,
start MyApp.exe -arg1 -arg2
Ich habe dafür start / b verwendet, anstatt nur zu starten, und es lief ohne Fenster für jeden Befehl, sodass nicht gewartet werden musste.
Wenn start
nicht finden können, wonach es sucht, macht es das, was Sie beschreiben.
Da das, was Sie tun, funktionieren sollte, ist es sehr wahrscheinlich, dass Sie einige Zitate weglassen (oder Extras einfügen).
start
innerhalb einer -edcall
-ed .bat-Datei B (die wiederum von genannt war A ) und C geöffnet bleibt , nachdem B Oberflächen (zB C ist ein Dienst oder etwas, das nur darauf wartet, dass etwas passiert, und keinen festen Endpunkt hat, bis das Betriebssystem heruntergefahren wird. Das übergeordnete A, das das enthält,call
kann möglicherweise nicht wie erwartet beendet werden, es sei denn, der Prozess C wird geschlossen oder ist es getötet. Hier ist ein einfaches Beispiel: codepad.org/KLglXDnZ