本文共 1128 字,大约阅读时间需要 3 分钟。
protected override void OnStartup(StartupEventArgs e)
{ base.OnStartup(e);RegisterEvents();}private void RegisterEvents()
{ //TaskScheduler.UnobservedTaskException += (sender, args) =>//{ // MessageBox.Show(args.Exception.Message);// args.SetObserved();//};this.DispatcherUnhandledException += App_DispatcherUnhandledException;
TaskScheduler.UnobservedTaskException += new EventHandler<UnobservedTaskExceptionEventArgs>(TaskScheduler_UnobservedTaskException);AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
}private void App_DispatcherUnhandledException(object sender, DispatcherUnhandledExceptionEventArgs e)
{}
static void TaskScheduler_UnobservedTaskException(object sender, UnobservedTaskExceptionEventArgs e)
{ foreach (Exception item in e.Exception.InnerExceptions){ Console.WriteLine("异常类型:{0}{1}来自:{2}{3}异常内容:{4}",item.GetType(), Environment.NewLine, item.Source,Environment.NewLine, item.Message);}//将异常标识为已经观察到 e.SetObserved();}private void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{ MessageBox.Show("Unhandled exception.");}转载地址:http://rkvdl.baihongyu.com/