visual - ¿Cómo evitar que las aplicaciones de la consola C#se cierren automáticamente?
hola mundo c# visual studio 2017 (9)
Esta pregunta ya tiene una respuesta aquí:
Mis aplicaciones de consola en Visual Studio se cierran automáticamente, así que me gustaría usar algo como el system("PAUSE")
de C system("PAUSE")
para "pausar" las aplicaciones al final de su ejecución, ¿cómo puedo lograrlo?
Alternativamente, puede retrasar el cierre utilizando el siguiente código:
System.Threading.Thread.Sleep(1000);
Tenga en cuenta que el Sleep
está utilizando milisegundos
Ctrl + F5 es mejor, porque no necesita líneas adicionales. Y puedes, al final, presionar entrar y salir del modo de ejecución.
Pero, cuando inicias un programa con F5 y pones un punto de interrupción, puedes depurar tu aplicación y eso te da otras ventajas.
Esas soluciones mencionadas cambian cómo funciona su programa.
Por supuesto, puede poner #if DEBUG
y #endif
alrededor de las llamadas de la Consola, pero si realmente desea evitar que la ventana se cierre solo en su máquina de desarrollo en Visual Studio o si VS no se está ejecutando solo si la configura explícitamente, y no desea el molesto ''Press any key to exit...''
cuando se ejecuta desde la línea de comandos, el camino a seguir es usar las API System.Diagnostics.Debugger
.
Si solo desea que funcione en DEBUG
, simplemente ajuste este código en un método [Conditional("DEBUG")] void BreakConditional()
.
// Test some configuration option or another
bool launch;
var env = Environment.GetEnvironmentVariable("LAUNCH_DEBUGGER_IF_NOT_ATTACHED");
if (!bool.TryParse(env, out launch))
launch = false;
// Break either if a debugger is already attached, or if configured to launch
if (launch || Debugger.IsAttached) {
if (Debugger.IsAttached || Debugger.Launch())
Debugger.Break();
}
Esto también funciona para depurar programas que necesitan privilegios elevados, o que necesitan poder elevarse ellos mismos.
Pruebe Ctrl + F5 en Visual Studio para ejecutar su programa, esto agregará una pausa con "Presione cualquier tecla para continuar ..." automáticamente sin ninguna función de Console.Readline () o ReadKey ().
Si no desea que el programa se cierre incluso si un usuario presiona cualquier tecla;
while (true) {
System.Console.ReadKey();
};//This wont stop app
Simplemente puede compilar (comenzar a depurar) su trabajo con Ctrl + F5 .
Intentalo. Siempre lo hago y la consola me muestra mis resultados abiertos. No se necesita código adicional.
Utilizar:
Console.ReadKey();
Para que se cierre cuando alguien presiona cualquier tecla, o:
Console.ReadLine();
Para cuando el usuario escribe algo y presiona enter.
Console.ReadLine()
para esperar a que el usuario ingrese o Console.ReadKey
para esperar cualquier clave.
Console.ReadLine();
o
Console.ReadKey();
ReadLine()
espera ↩ , ReadKey ReadKey()
espera cualquier tecla (excepto las teclas modificadoras).
Edición: robó el símbolo clave de Darin.