Domanda

Ho bisogno di creare un file batch che avvia la console più applicazioni in Windows .cmd file.Questo può essere fatto utilizzando il comando di avvio.

Tuttavia, il comando è un percorso in esso.Anche io ho bisogno di passare i parametri che hanno spazi.Come fare questo?

E. g.file batch

start "c:\path with spaces\app.exe" param1 "param with spaces"
È stato utile?

Soluzione

In realtà, il suo esempio non funziona (anche se in un primo momento ho pensato che sarebbe troppo).Basato sull'aiuto per il comando di Avvio, il primo parametro è il nome della nuova finestra del Prompt dei comandi, e il secondo e il terzo dovrebbe essere il percorso dell'applicazione e dei suoi parametri, rispettivamente.Se si aggiunge un altro "" prima di percorso per le app, dovrebbe funzionare (almeno per me).Usare qualcosa di simile a questo:

start "" "c:\path with spaces\app.exe" param1 "param with spaces"

È possibile modificare il primo argomento ad essere ciò che si desidera che il titolo del nuovo comando prompt.Se si tratta di un app di Windows che è stato creato, quindi il prompt dei comandi non viene visualizzata, e il titolo, non importa.

Altri suggerimenti

In fuga il percorso con apostrofi è corretto, ma il comando di avvio richiede un parametro contenente il titolo della nuova finestra.Questo parametro viene rilevato dal circostante apostrofi, in modo che l'applicazione non viene eseguito.

Provare qualcosa di simile a questo:

start "Dummy Title" "c:\path with spaces\app.exe" param1 "param with spaces"
start "" "c:\path with spaces\app.exe" "C:\path parameter\param.exe"

Quando ho usato il suggerimento precedente, ho:

'c:\path" non è riconosciuto un comando interno o esterno, un programma eseguibile o un file batch.

Penso che la seconda qoutation marchio prevenire il comando da eseguire.Dopo qualche ricerca qui sotto la soluzione per salvare la mia giornata:

start "" CALL "c:\path with spaces\app.exe" "C:\path parameter\param.exe"

È interessante notare, sembra che in Windows Embedded Compact 7, non è possibile specificare un titolo di stringa.Il primo parametro deve essere il comando o un programma.

Sono da utilizzare qualcosa di simile a questo:

start /d C:\Windows\System32\calc.exe

start /d "C:\Program Files\Mozilla

Firefox" firefox.exe start /d

"C:\Program Files\Microsoft

Office\Office12" EXCEL.EXE

Inoltre vi consiglio di utilizzare speciali file batch editor - Dr. Dosatore

Che circonda il percorso e la discussione con gli spazi all'interno delle virgolette, come nel tuo esempio dovrebbe fare.Il comando può essere necessario per gestire le virgolette quando i parametri sono passati, ma di solito non è un grosso problema.

Ho ricercato con successo e si sta lavorando bene per me.La mia richiesta è inviata una e-mail utilizzando vbscript che deve essere chiamata da un file batch di windows.Qui è il comando esatto sto usando senza errori.

START C:\Windows\System32\cscript.exe "C:\Documents and Settings\akapoor\Desktop\Mail.vbs"
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top