2010-03-31 95 views
43

我有这样如何在程序退出之前运行代码?

Class Program 
{ 
    static void main(string args[]) 
    { 
    } 
} 

现在我想做的main()退出后的东西有点控制台C#程序。我试图为课程编写解构器,但它从未受到影响。

是否有人知道如何去做。

非常感谢

回答

97

尝试ProcessExit事件的AppDomain

using System; 
class Test { 
    static void Main(string[] args) 
    { 
     AppDomain.CurrentDomain.ProcessExit += new EventHandler (OnProcessExit); 
     // Do something here 
    } 

    static void OnProcessExit (object sender, EventArgs e) 
    { 
     Console.WriteLine ("I'm out of here"); 
    } 
} 
+0

这工作得更好。 – 7wp 2010-03-31 18:26:14

+0

我的回答不正确,这是最好的方法。 – ace 2010-03-31 18:27:40

+0

这是最通用的解决方案,但在这里要小心,因为'ProcessExit'事件的时间限制为三秒(就像终止程序在应用程序关闭时一样)。 http://msdn.microsoft.com/en-us/library/system.appdomain.processexit.aspx – 2010-03-31 18:28:40

相关问题