2011-11-30 10 views
5

im cercando di scrivere un file batch che avvia alcuni programmi automaticamente con un ritardo. perché ci vuole sempre per il mio pc per iniziare e ho anche la mancanza di risposta a causa di esso.creazione di un file batch per i programmi per iniziare a utilizzare un ritardo

questo è come sembra in questo momento:

@echo off 
TIMEOUT 5 
start D:\somepath\someapp.exe 
TIMEOUT 50 
start "E:\somepath\someapp.exe" 

perché l'ultima linea è racchiusa tra virgolette, il non ha ancora 'someapp.exe' è cominciato.

qualcuno può spiegare perché non ha avviato l'app? il primo, tuttavia, è stato avviato.

Inoltre, come posso nascondere il prompt dei comandi?

grazie in anticipo!

risposta

6

Vedere help start. Il primo argomento quotato viene trattato da start come titolo della finestra di comando. Quindi il tuo quotato "E:\somepath\someapp.exe" era il riquadro di una finestra di comando vuota. Dove non quotato E:\somepath\someapp.exe era un comando effettivo.

Se è necessario citare il comando, utilizzare prima un'altra stringa citata come titolo della finestra.

start "Someapp Window Title" "E:\somepath\someapp.exe" 

Oppure, se non si desidera fornire un titolo della finestra, fornire il percorso e il comando separatamente/D Interruttore

start /D "E:\somepath" someapp.exe 

È possibile utilizzare l'opzione/B per fermare la creazione di una nuova finestra per avviare il comando

start /D "E:\somepath" /B someapp.exe 

Oppure si può utilizzare l'opzione/MIN interruttore per avviare la finestra ridotta

start /D "E:\somepath" /MIN someapp.exe 
+0

ho letto da qualche parte che se il percorso ha spazi, ho bisogno di circondarlo di virgolette. ma che dire nascondere la finestra? – Yustme

+0

sì, devi citare un nome di directory con spazi. quindi fornisci un titolo di finestra o fornisci percorso e comando separatamente. – Raihan

+0

qual è l'opzione/D per? – Yustme

Problemi correlati