总有那么些异常是我们在编写代码的时候预料不到的,我们要做的,就是记录下他们。
下面是代码示例:
//捕获当前未绑定异常
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:记录异常
}
需要说明的是:这样做异常一样会抛出,程序一样会崩溃。