Esiste un modo per eseguire un'applicazione senza attendere in un file batch? Ho provato il start
comando ma crea semplicemente una nuova finestra di comando.
Esiste un modo per eseguire un'applicazione senza attendere in un file batch? Ho provato il start
comando ma crea semplicemente una nuova finestra di comando.
Risposte:
Sto facendo un'ipotesi qui, ma la tua start
invocazione probabilmente assomiglia a questo:
start "\Foo\Bar\Path with spaces in it\program.exe"
Questo aprirà una nuova finestra della console, usando "\ Foo \ Bar \ Path con spazi in esso \ program.exe" come titolo.
Se usi start
qualcosa che è (o deve essere) circondato da virgolette, devi inserire virgolette vuote come primo argomento:
start "" "\Foo\Bar\Path with spaces in it\program.exe"
Questo perché start
interpreta il primo argomento citato che trova come titolo della finestra per una nuova finestra della console.
start "Obligatory Atavistic Window Title" "\Foo\Bar\Path with spaces in it\program.exe"
Se il tuo exe prende argomenti,
start MyApp.exe -arg1 -arg2
Ho usato start / b per questo invece di semplicemente start e ha funzionato senza una finestra per ogni comando, quindi non c'era attesa.
Se start
non riesci a trovare quello che sta cercando, fa quello che descrivi.
Dal momento che ciò che stai facendo dovrebbe funzionare, è molto probabile che stai tralasciando alcune virgolette (o inserendo extra).
start
-ed all'interno di uncall
file .bat -ed B (che a sua volta è stato chiamato da A ), e C rimane aperto dopo che B termina (diciamo C è un servizio o qualcosa che aspetta solo che succeda qualcosa e non ha un endpoint fisso fino allo spegnimento del sistema operativo), il genitore A che contenevacall
potrebbe non essere in grado di terminare come previsto a meno che il processo C non si chiuda o ucciso. Ecco un semplice esempio: codepad.org/KLglXDnZ