控制台应用程序,由于一些未捕获的异常,会导致程序崩溃,Windows会自动弹出“XXXX程序已停止工作”的对话框。为了避免这种情况发生
在应用程序入口处订阅UnhandledExceptionEventHandler事件。
代码如下:
AppDomain.CurrentDomain.UnhandledException
+=
new
UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
//
;OnDomainUnhandledException;
捕获异常,并处理:
static
void
CurrentDomain_UnhandledException(
object
sender, UnhandledExceptionEventArgs e)
{
ExceptionToMessageHelper.WriteLog( string .Format( " 应用程序出现异常,请重新启动!异常情况如下:\r\n{0} " , e.ExceptionObject.ToString()));
SendMonitorMessage( - 40003011 , " 应用程序出现异常,请重新启动! " ); //发送消息到监控系统
}
{
ExceptionToMessageHelper.WriteLog( string .Format( " 应用程序出现异常,请重新启动!异常情况如下:\r\n{0} " , e.ExceptionObject.ToString()));
SendMonitorMessage( - 40003011 , " 应用程序出现异常,请重新启动! " ); //发送消息到监控系统
}