Ottieni i codici di uscita dall'applicazione Windows Form nella finestra di comando
-
19-08-2019 - |
Domanda
Sto avviando un'applicazione Windows Form dal prompt dei comandi e ho bisogno di ottenere i codici di uscita generati dall'applicazione Windows Form. Il comando promt avvia l'applicazione e ritorna immediatamente. Ma l'applicazione viene eseguita in background. C'è un modo per ottenere i codici di uscita?
Cordiali saluti
Christian.
Soluzione
La risposta è
start /wait [Your Command]
e poi
echo %errorlevel%
per estrarre il valore restituito.
-
E perché mi piace scrivere file batch ... (è un mio problema ...)
@echo off echo Waiting for program to exit... start /wait %* echo Return code was %errorlevel%
Salvalo da qualche parte con un'estensione .bat. Eseguilo con la riga di comando del programma che desideri eseguire come argomenti. Eseguirà il comando che gli hai dato, aspetterà che finisca, quindi stampa il valore restituito.
Puoi anche programmare il programma sostituendo la linea start / wait con la tua app, perché come dicono i documenti (start /?):
Quando si esegue un'applicazione che è un'applicazione GUI a 32 bit, CMD.EXE non attende la chiusura dell'applicazione prima di tornare a il prompt dei comandi. Questo nuovo comportamento NON si verifica durante l'esecuzione all'interno di uno script di comandi.
CMD attenderà una winform se viene chiamata da uno script indipendentemente dal fatto che le estensioni di comando siano abilitate.