2010-03-31 94 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

相關問題