Comment empêcher la fermeture de l'invite de commande après exécution ?
Mon problème est que dans Windows, il y a des fenêtres de ligne de commande qui se ferment immédiatement après exécution. Pour résoudre ce problème, je veux que le comportement par défaut soit que la fenêtre reste ouverte. Normalement, ce comportement peut être évité grâce à trois méthodes qui me viennent à l'esprit :
- Mettre une ligne
pause
après les programmes batch pour inviter l'utilisateur à appuyer sur une touche avant de quitter - Exécuter ces fichiers batch ou d'autres outils de manipulation en ligne de commande (même le démarrage du service, le redémarrage, etc. avec
net start xy
ou quelque chose de similaire) danscmd.exe
(Start - Run - cmd.exe) - Exécuter ces programmes avec
cmd /k
comme ceci :cmd /k myprogram.bat
Mais il y a d'autres cas dans lesquels l'utilisateur :
- Exécute le programme la première fois et ne sait pas que le programme donné s'exécutera à l'invite de commande (Windows Command Processor), par exemple lorsqu'il exécute un raccourci à partir du menu Démarrer (ou d'un autre endroit), OU
- Trouve un peu inconfortable d'exécuter cmd.exe tout le temps et n'a pas le temps/la possibilité de réécrire le code de ces commandes partout pour mettre une pause après elles ou éviter de sortir explicitement.
J'ai lu un article sur la modification du comportement par défaut de cmd.exe
lors de son ouverture explicite, avec la création d'une entrée AutoRun et en manipulant son contenu à ces endroits :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor\AutoRun
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Command Processor\AutoRun
(Les éléments AutoRun sont _String values_
…)
J'ai mis cmd /d /k
comme valeur pour essayer, mais cela n'a pas du tout changé le comportement des éléments mentionnés ci-dessus… Cela a juste changé le comportement de la fenêtre de ligne de commande lors de son ouverture explicite (Start-Run-cmd.exe).
Alors comment ça marche ? Pouvez-vous me donner des idées pour résoudre ce problème ?