start "" "%SystemRoot%\Notepad.exe"
Garder le ""
entre le début et le chemin d'accès à votre application.
Explication supplémentaire :
Normalement, lorsque nous lançons un programme à partir d'un fichier batch comme ci-dessous, nous avons le Windows noir en arrière-plan comme l'a dit OP.
%SystemRoot%\Notepad.exe
Ce problème était dû au fait que le Bloc-notes fonctionnait dans la même invite de commande (processus). L'invite de commande se fermera APRÈS la fermeture du Bloc-notes. Pour éviter cela, nous pouvons utiliser l'option start
pour lancer un processus distinct comme celui-ci.
start %SystemRoot%\Notepad.exe
Cette commande est correcte tant qu'il n'y a pas d'espace dans le chemin d'accès. Pour gérer les espaces dans le chemin au cas où, nous avons ajouté l'option "
des citations comme celle-ci.
start "%SystemRoot%\Notepad.exe"
Cependant, l'exécution de cette commande ne ferait que lancer une autre invite de commande vierge. Pourquoi ? Si l'on consulte la page start /?
, le start
reconnaîtra l'argument entre la commande "
comme titre de la nouvelle invite de commande qu'il va lancer. Ainsi, pour résoudre ce problème, nous avons la commande suivante :
start "" "%SystemRoot%\Notepad.exe"
Le premier argument de ""
est de définir le titre (que nous définissons comme vide), et le deuxième argument de la commande "%SystemRoot%\Notepad.exe"
est la commande cible à exécuter (qui prend en charge les espaces dans le chemin d'accès).
Si vous avez besoin d'ajouter des paramètres à la commande, il suffit de les ajouter entre guillemets, c'est-à-dire :
start "" "%SystemRoot%\Notepad.exe" "<filename>"