I have a console app, and I want to capture Control-C and shutdown gracefully.
I have the following code:
Console.CancelKeyPress += new ConsoleCancelEventHandler((o, e) =>
{
Logger.Log("Control+C hit. Shutting down.");
resetEvent.Set();
});
And the output windows shows:
6/16/2010 3:24:34 PM: Control+C hit. Shutting down.
^C
Is there a way to prevent the control-c character ^C
from appearing? It's not a huge deal, but for some reason Ill be fixated on it because I'm anal like that.
Being a console application I would use Environment.Exit
to signal that the application is exiting and this way stopping the ^C
from being print.
You could even provide a specific error code to symbolize that the user pressed CTRL+C.
static void Console_CancelKeyPress(object sender, ConsoleCancelEventArgs e)
{
Console.WriteLine("Control+C hit. Shutting down.");
Environment.Exit(-1);
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With