Ausführen von .exe in der Eingabeaufforderung

38

Ich versuche, ein Iterationsprogramm auszuführen. Wenn ich darauf klicke, wird es geöffnet und dann beendet. Wenn ich die Eingabetextdatei mit dem Programm öffne, wird die Iteration abgeschlossen und das Fenster sofort geschlossen. Wie kann ich es entweder ausführen, damit das Fenster nicht geschlossen wird (und ich kann meine Ergebnisse sehen), oder es schaffen, dasselbe in der Eingabeaufforderung zu tun. Ich bin nicht besonders vertraut damit, Dinge in der Eingabeaufforderung zu erledigen.

user418119
quelle
Öffnen Sie eine Eingabeaufforderung (Start -> Ausführen -> cmd.exe), navigieren Sie zum Speicherort des Ordners die Eingabeaufforderung cdBefehl, führen die .exevon dort
user13267
4
Alternativ können Sie eine Batch-Datei (.bat) mit zwei Zeilen erstellen. Das erste ist die Befehlszeile Ihrer Anwendung und das zweite ist "PAUSE". Das Befehlszeilenfenster bleibt geöffnet, bis Sie eine Taste drücken oder mit der Taste "X" schließen. Der Vorteil dieser Lösung ist, dass Sie eine separate Verknüpfung zur .bat-Datei haben können, sodass Sie Ihr Programm entweder mit oder ohne Unterbrechung am Ende starten können.
mg30rg
Geben Sie an einer Eingabeaufforderung Folgendes ein: your_cmd.exe && pause

Antworten:

56

Dadurch bleibt das Konsolenfenster auch nach dem Beenden von MyApp.exe geöffnet:

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

Sie können eine Verknüpfung mit den oben genannten erstellen. Diese Lösung funktioniert mit allen Konsolenprogrammen und erfordert nicht, dass Sie jedes Mal die Eingabeaufforderung durchlaufen (oder die ursprüngliche EXE-Datei ändern, was normalerweise nicht möglich ist).

Übrigens gibt es den /KSwitch schon seit NT-Tagen :-p

misha256
quelle
17

Eine andere Möglichkeit, die nützlich ist, wenn der Pfad zur EXE-Datei kompliziert ist: Starten Sie die Eingabeaufforderung und ziehen Sie die EXE-Datei in das Cmd-Fenster. Der vollständige Pfad zur Datei wird in die Eingabeaufforderung eingefügt und Sie müssen nur die Eingabetaste drücken. Keine Notwendigkeit, in irgendwelche Pfade zu cden.

Ranayna
quelle
8
  1. Öffnen Sie die Eingabeaufforderung -> Gehen Sie .exemit dem cdBefehl zu Ihrem Standort -> führen Sie den Befehl aus.exe
  2. Sie können Console.ReadKey()am Ende Ihres Codes hinzufügen, sodass das Programm wartet, bis der Benutzer eine Taste drückt.
Mangesh Ghotage
quelle
3

Eine Möglichkeit, eine Datei mit cmd auszuführen und geöffnet zu lassen:

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

Das "/ w" bedeutet, dass gewartet wird, bis die Anwendung geschlossen wird.

Wenn Sie auf 64bit sind, gibt es hier ein anderes Beispiel:

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

Dies stellt sicher, dass es weiterhin als 64-Bit ausgeführt wird.

war59312
quelle
2

Startmenü -> cmd -> cd C: \ PATHTOYOURFILE \ -> program.exe

Oder fügen Sie am Ende Ihres Iterationsprogramms eine Pausenfunktion hinzu (vorausgesetzt, Sie haben Zugriff auf die Quelle).

nichtion
quelle
1

Halten Sie die Umschalttaste gedrückt, klicken Sie mit der rechten Maustaste auf eine beliebige Stelle im Ordner und klicken Sie auf "Eingabeaufforderungsfenster hier öffnen", um cmd mit zu öffnen sein Verzeichnis bereits festgelegt. Sie können dann einfach den Namen der Exe selbst eingeben

Matt Hurst
quelle
2
Dies ist am besten als Kommentar einzutragen , da hierdurch die ursprüngliche Frage nicht beantwortet wird. Es ist jedoch ein nützlicher Tipp.
DrMoishe Pippik
0

Vielleicht möchten Sie auch eine Umleitung versuchen. Ich denke, das ist so einfach und fügt auch der Ausgabenachricht eine Persistenz hinzu, die nichtflüchtig ist. c: \ myapp.exe> ​​c: \ myapp.dbg

JMAC
quelle