2016-03-26 10 views
-1

Ich habe vor kurzem mit der Programmierung von C++ mit Visual Studio Express 2015 gestartet, ich habe die EXE-Datei kompiliert, aber wenn ich das als Admin starte und die Eingabe eingeben und Wenn ich dann "ENTER" drücke, wird es sofort geschlossen. Ich weiß, dass die Datei funktioniert, wie ich es in VS1 getestet habe.Meine Datei startet in Visual Studio, aber geht sofort als EXE-Datei

Schätzen Sie alle Richtlinien, wie Sie die EXE-Datei für mehr als 0000001 Millisekunden auf dem Bildschirm erscheinen lassen.

screen shot of VS.

+0

Sie erhalten eine Vorschau von dem, was passiert, wenn Sie eine Verknüpfung zu Ihrem Programm auf dem Desktop erstellen. Flash, bang, weg. Sie benötigen den Code "Zum Ausführen einer beliebigen Taste drücken". Oder führen Sie es immer über eine Eingabeaufforderung aus. Stellen Sie jetzt einfach einen Haltepunkt am Ende Ihrer main() -Funktion ein. –

+0

Wie mache ich das? – Victor

+0

In diesem Fall gibt es nicht viel Code. Bitte geben Sie den vollständigen Code in die Frage ein, nicht nur das Bild. – wally

Antwort

0

Das Problem ist, dass Windows das Fenster schließt, wenn das Programm als Standardverhalten ausgeführt wird.

Von your header file können Sie keep_window_open(); als letzte Anweisung verwenden.

Es enthält folgende Komponenten:

inline void keep_window_open() 
{ 
    cin.clear(); 
    cout << "Please enter a character to exit\n"; 
    char ch; 
    cin >> ch; 
    return; 
} 

Eine weitere Option, wenn Sie das Programm unverändert halten wollen, ist create a shortcut and then modify the command that windows will use es auszuführen, wie folgt:

  1. eine Verknüpfung zu Ihrer erstellen MS-DOS Programm oder Befehl.
  2. Sobald eine Verknüpfung erstellt wurde, klicken Sie mit der rechten Maustaste auf die Verknüpfung, und klicken Sie auf Eigenschaften.
  3. Ändern Sie im Fenster Eigenschaften den Zielpfad so, dass er den Befehl cmd.exe mit dem Schalter enthält, wie im folgenden Beispiel gezeigt.

ändern

C:\My programs\test.exe 

zu:

C:\Windows\System32\cmd.exe /K "C:\My programs\test.exe" 
+0

Das scheint nicht auf diese Frage oder Antwort bezogen zu sein. D8016 bedeutet, dass die Optionen nicht kompatibel sind. Einige andere Einstellungen für Ihr Projekt müssen falsch sein. Bitte posten Sie eine weitere Frage mit passenden Tags und Details zu dem, was Sie versucht haben, zu beheben. – wally

+0

danke es hat jetzt funktioniert. Ich musste ein neues Projekt starten, da es in meiner Umgebung einige Fehler gab. – Victor