web-dev-qa-db-fra.com

Exécuter .exe dans l'invite de commande

J'essaie de lancer un programme d'itération, et chaque fois que je clique dessus, il s'ouvre puis se termine. Lorsque j'ouvre le fichier texte d'entrée à l'aide du programme, l'itération se termine, puis la fenêtre se ferme instantanément. Comment puis-je soit l'exécuter pour que la fenêtre ne se ferme pas (et je peux voir mes résultats), soit arriver à faire la même chose dans la commande Invite. Je ne suis pas très habitué à faire des commandes dans l'invite de commande.

37
user418119

Cela laissera la fenêtre de la console ouverte même après la fermeture de MyApp.exe:

cmd /K "C:\SomeFolder\MyApp.exe"

Vous pouvez créer un raccourci avec ce qui précède. Cette solution fonctionne avec tous les programmes de la console et ne nécessite pas que vous passiez par l'invite de commande à chaque fois (ou que vous ne modifiiez pas l'exe original, ce que vous ne pouvez généralement pas).

Incidemment, le commutateur /K existe depuis les jours NT :-p

55
misha256

Une autre façon, très utile si le chemin du fichier .exe est compliqué: lancez la commande Invite, puis faites simplement glisser le fichier .exe dans la fenêtre de commande. Le chemin complet du fichier sera collé dans l'invite et il vous suffira d'appuyer sur Entrée. Pas besoin de cd dans aucun chemin.

16
Ranayna
  1. Ouvrez la commande Invite -> Accédez à l'emplacement de votre .exe à l'aide de la commande cd -> exécutez votre .exe
  2. Vous pouvez ajouter Console.ReadKey() à la fin de votre code pour que le programme attende que l'utilisateur appuie sur une touche.
7
Mangesh Ghotage

Menu Démarrer -> cmd -> cd C:\PATHTOYOURFILE\-> programme.exe

Ou ajoutez une fonction de pause à la fin de votre programme d'itération (en supposant que vous ayez accès à la source)

2
nonion

Une façon d’exécuter un fichier avec cmd et de le laisser rester ouvert:

start /b /w /D"C:\StartAndEnd\scripts" NVIDIASystemMonitor.au3

Le "/ w" signifie qu'il attend jusqu'à la fermeture de l'application.

Si vous êtes sur 64 bits, voici un autre exemple:

c:\windows\syswow64\cmd.exe /c c:\windows\sysnative\cmd.exe /c start /b /w /D"C:\StartAndEnd\scripts" NVIDIASystemMonitor.au3

Cela garantit qu'il fonctionne toujours en 64 bits.

2
war59312

Pour éviter les tracas liés au cd potentiel dans le bon dossier alors que vous y êtes probablement déjà dans Windows Explorer, maintenez simplement la touche Maj enfoncée, cliquez avec le bouton droit de la souris sur un espace dans le dossier et cliquez sur "Ouvrir la fenêtre d'invite de commande ici" pour ouvrir son répertoire est déjà défini. Vous pouvez alors simplement taper le nom de l'exe lui-même

1
Matt Hurst

Peut-être envie d'essayer une redirection aussi. Je pense que cela est si simple et ajoute également une persistance non volatile au message de sortie. c:\myapp.exe> ​​c:\myapp.dbg

0
JMAC