Come evitare che il prompt dei comandi si chiuda dopo l'esecuzione?
Il mio problema è che in Windows ci sono finestre a riga di comando che si chiudono immediatamente dopo l'esecuzione. Per risolvere questo problema, voglio che il comportamento predefinito sia quello di tenere aperta la finestra. Normalmente, questo comportamento può essere evitato con tre metodi che mi vengono in mente:
- 1. Mettere una riga
pause
dopo i programmi batch per chiedere all'utente di premere un tasto prima di uscire da - 2. Esecuzione di questi file batch o di altri strumenti di manipolazione a riga di comando (anche l'avvio del servizio, il riavvio, ecc. con
net start xy
o qualcosa di simile) all'interno dicmd.exe
(Start - Run - cmd.exe) - Esecuzione di questi programmi con
cmd /k
in questo modo:cmd /k myprogram.bat
Ma ci sono alcuni altri casi in cui l'utente:
- Esegue il programma la prima volta e non sa che il programma dato verrà eseguito in Prompt di comando (Windows Command Processor) ad esempio quando si esegue una scorciatoia dal menu Start (o da qualche altra parte), OR
- Trova un po’ scomodo eseguire cmd.exe tutto il tempo e non ha il tempo/opportunità di riscrivere il codice di questi comandi ovunque per mettere una pausa dopo di loro o evitare di uscire esplicitamente.
Ho letto un articolo su come cambiare il comportamento predefinito di cmd.exe
quando lo si apre esplicitamente, con la creazione di una voce AutoRun e manipolandone il contenuto in queste posizioni:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor\AutoRun
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Command Processor\AutoRun
(Gli articoli AutoRun sono _String values_
…)
Ho messo cmd /d /k
come valore di esso per provarlo, ma questo non ha affatto cambiato il comportamento delle cose sopra menzionate… Ha solo cambiato il comportamento della finestra della riga di comando quando la si apre esplicitamente (Start-Run-cmd.exe).
Allora come funziona? Può darmi qualche idea per risolvere questo problema?