From bfd1b73be85fd66ee37031eadcd4d09e7dafb52f Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期四, 13 二月 2025 18:51:40 +0800 Subject: [PATCH] 开始增加构件分组功能 --- Desktop/HStation.Desktop.Xhs.Core/Program.cs | 22 ++++++++++++++++++---- 1 files changed, 18 insertions(+), 4 deletions(-) diff --git a/Desktop/HStation.Desktop.Xhs.Core/Program.cs b/Desktop/HStation.Desktop.Xhs.Core/Program.cs index bfb60de..1b11de6 100644 --- a/Desktop/HStation.Desktop.Xhs.Core/Program.cs +++ b/Desktop/HStation.Desktop.Xhs.Core/Program.cs @@ -36,6 +36,8 @@ Application.ThreadException += Application_ThreadException; //处理非UI线程异常 AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; + //处理未被观察到的异常 + TaskScheduler.UnobservedTaskException += TaskScheduler_UnobservedTaskException; Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); @@ -103,6 +105,8 @@ } } + + ///<summary> /// 这就是我们要在发生未处理异常时处理的方法,我这是写出错详细信息到文本,如出错后弹出一个漂亮的出错提示窗体,给大家做个参考 /// 做法很多,可以是把出错详细信息记录到文本、数据库,发送出错邮件到作者信箱或出错后重新初始化等等 @@ -113,12 +117,15 @@ private static void Application_ThreadException(object sender, System.Threading.ThreadExceptionEventArgs e) { var ex = e.Exception; - if (ex is Yw.Vmo.VException internalEx) + if (ex is Yw.Vmo.VException vmoEx) + { + Yw.LogHelper.Error("系统出现内部异常,ERROR:249", vmoEx); + VmoExceptionTipFormHelper.Show(vmoEx); + } + else if (ex is Yw.Dto.InternalException internalEx) { Yw.LogHelper.Error("系统出现内部异常,ERROR:249", internalEx); - var dlg = new Yw.WinFrmUI.VmoExceptionInfoDlg(); - dlg.SetBindingData(internalEx); - dlg.ShowDialog(); + } else { @@ -143,5 +150,12 @@ MessageBoxHelper.ShowError($"系统出现未知异常,请重启系统!\r\n{ex.Message}"); } } + + // + private static void TaskScheduler_UnobservedTaskException(object sender, UnobservedTaskExceptionEventArgs e) + { + throw new NotImplementedException(); + } + } } \ No newline at end of file -- Gitblit v1.9.3