2009-05-12 15 views
8

Questa è probabilmente una domanda di Visual Studio semplice, ma non ho potuto trovarla sul sito.Arresta Visual Studio dal programma di chiusura dopo il completamento

Quando "Avvia il debug" di un programma di console, esce immediatamente al termine. C'è un modo per farla mettere in pausa quando finisce senza mettere un comando di pausa esplicito alla fine del tuo programma?

+0

Speranza trovi utile la risposta a questa domanda correlata: http://stackoverflow.com/questions/193469/how-to-make-visual-studio-pause-after-executing-a-console-app-in-debug-mode –

risposta

3

"Run senza Debugging" fa questo, ma penso che si desidera eseguire il debug ancora :)

+0

Ah questo è quello che volevo. È un peccato che non si possa eseguire il debugging con questo. Accetterò la tua risposta a meno che non ne emerga una migliore. – Unknown

+0

Questo non funziona se stai iniziando un programma esterno piuttosto che il progetto ... –

1

Console.ReadKey() dovrebbe farlo. Metterà in pausa l'esecuzione del programma finché non viene premuto un tasto sulla tastiera.

+0

Leggi di nuovo questa parte della domanda "senza mettere un comando di pausa esplicito alla fine del tuo programma" :) – Burkhard

6

È possibile posizionare Console.ReadLine alla fine del programma. Ciò costringerà il programma ad attendere l'introduzione di un carattere di nuova riga. Oppure puoi piazzare il breakpoint alla fine del probram.

+0

Mi piace 'Console.ReadKey (true); 'molto meglio: 3 (aspetta solo una pressione di un tasto, qualunque esso sia) – MasterMastic

10

Aggiungere un punto di interruzione poco prima che l'applicazione termini.

+0

+1 Se non vuoi apportare modifiche al codice + vuoi eseguire il debug, non posso pensare ad altro. – Gishu

+2

Cosa succede se ci sono più punti di uscita? (non che il mio programma di console ne abbia ancora) – Unknown

+1

Quindi aggiungere più punti di interruzione :) –

1

sì come @matthew detto Console.ReadKey() attenderà il vostro input dopo l'esecuzione del programma, ma è possibile utilizzare Console.ReadLine(), che terminerà solo se <ENTER> tasto viene premuto:

void main() 
{ 
    Console.WriteLine("Hello World!"); //:) 
    Console.ReadLine();//this will do the trick. 
} 
Problemi correlati