總有那麼些異常是我們在編寫代碼的時候預料不到的,我們要做的,就是記錄下他們。
下面是代碼示例:
//捕獲當前未綁定異常
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
//捕獲線程異常
Application.ThreadException += new ThreadExceptionEventHandler(Application_ThreadException);
static void Application_ThreadException(object sender, ThreadExceptionEventArgs e)
{
Exception exp = e.Exception;
//todo:記錄異常
}
static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{
Exception exp = (Exception)e.ExceptionObject;
//todo:記錄異常
}
需要說明的是:這樣做異常一樣會拋出,程序一樣會崩潰。