C#控制台应用程序自动关闭

控制台应用程序,由于一些未捕获的异常,会导致程序崩溃,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"应用程序出现异常,请重新启动!"); //发送消息到监控系统
}

 

posted @ 2009-06-19 13:48  wanghaijun  阅读(2354)  评论(0编辑  收藏  举报