2012-07-02 94 views
6

我如何知道我的C#控制台应用程序何时会停止?有没有发生过类似的事件?控制台应用程序C的关闭事件#

谢谢!应用领域

class Program 
    { 
     static void Main(string[] args) 
     { 
      AppDomain.CurrentDomain.ProcessExit += new EventHandler(CurrentDomain_ProcessExit);   


     } 

     static void CurrentDomain_ProcessExit(object sender, EventArgs e) 
     { 
      Console.WriteLine("exit"); 
     } 
    } 
+0

你想让代码退出应用? –

+3

[这个问题是与你的相似] [1] [1]:http://stackoverflow.com/questions/1119841/net-console-application-exit-event – greijner

回答

23

使用ProcessExit事件可能会帮助您。

MSDN explains它如何与你需要照顾,同时处理该事件,摘录的其他东西一起处理该事件:

此事件一起使用, System.ConsoleCancelEventHandler和System.ConsoleCancelEventArgs 。 的CancelKeyPress事件使得控制台应用程序拦截 的CTRL + C信号,以便该应用程序可以决定是否继续执行 或终止。

使用此事件可明确控制应用程序如何响应CTRL + C信号的 。如果您的应用程序具有简单的要求,您可以使用TreatControlCAsInput属性而不是此事件。

此事件的事件处理程序在线程池线程上执行。

+0

应当注意的是您在CurrentDomain_ProcessExit中的代码只会在应用程序终止前几秒钟执行。 –

5

处理事件System.Console.CancelKeyPress

相关问题