From ef1fc8b0eeea6972964d8c62dfef7819bea49d1a Mon Sep 17 00:00:00 2001 From: qin <a@163.com> Date: 星期五, 14 三月 2025 11:01:34 +0800 Subject: [PATCH] 提交文件 --- Desktop/HStation.Desktop.Xhs.Core/Program.cs | 91 ++++++++++++++++++++++++++++++++++++--------- 1 files changed, 73 insertions(+), 18 deletions(-) diff --git a/Desktop/HStation.Desktop.Xhs.Core/Program.cs b/Desktop/HStation.Desktop.Xhs.Core/Program.cs index 7c75e0d..c4b8535 100644 --- a/Desktop/HStation.Desktop.Xhs.Core/Program.cs +++ b/Desktop/HStation.Desktop.Xhs.Core/Program.cs @@ -1,6 +1,8 @@ using DevExpress.LookAndFeel; using Mapster; using System.Reflection; +using Yw; +using Yw.WinFrmUI; namespace HStation.Desktop { @@ -34,6 +36,8 @@ Application.ThreadException += Application_ThreadException; //处理非UI线程异常 AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; + //处理未被观察到的异常 + TaskScheduler.UnobservedTaskException += TaskScheduler_UnobservedTaskException; Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); @@ -55,22 +59,42 @@ // To customize application configuration such as set high DPI settings or default font, // see https://aka.ms/applicationconfiguration. ApplicationConfiguration.Initialize(); + Yw.WinFrmUI.GlobalParas.AppIcon = HStation.Desktop.Xhs.Core.Properties.Resources.app; - //if (!LoginHelper.Login()) - //{ - // return; - //} + #region 验证升级 - // Yw.FileFolderZipHelper.Zip(@"C:\Users\ZKC\Desktop\循环水用例", @"C:\Users\ZKC\Desktop\循环水用例.ywrvt"); - //Yw.FileFolderZipHelper.Zip(@"C:\Users\Eventech\Desktop\循环水用例", @"C:\Users\Eventech\Desktop\循环水用例.ywrvt"); - // Yw.FileFolderZipHelper.Zip(@"C:\Users\admin\Desktop\居家办公工作\循环水用例", @"C:\Users\admin\Desktop\居家办公工作\循环水用例.ywrvt"); - //Yw.FileFolderZipHelper.Zip(@"C:\Users\admin\Desktop\居家办公工作\简单用例", @"C:\Users\admin\Desktop\居家办公工作\简单用例.ywrvt"); + try + { - //var json = RevitTestHelper.GenerateJson(); + if (AutoUpdateHelper.NeedExist()) + return; + } + catch (Exception ex) + { + LogHelper.Error("验证升级错误", ex); + } - //var jsonFileName = @"C:\Users\admin\Desktop\居家办公工作\二开压缩文件\hydro.json"; - //var jsonContent = File.ReadAllText(jsonFileName); - //var jsonModel = JsonHelper.Json2Object<HStation.Model.RevitModel>(jsonContent); + #endregion + + + if (!LoginHelper.Login()) + { + return; + } + + Yw.Untity.UserRegister.Regist + ( + Yw.WinFrmUI.LoginUserInfo.CorpID, + Yw.WinFrmUI.LoginUserInfo.UserID, + (int)Yw.WinFrmUI.LoginUserInfo.AdminType, + Yw.WinFrmUI.LoginUserInfo.UserName, + Yw.WinFrmUI.LoginUserInfo.UserTag, + Yw.WinFrmUI.LoginUserInfo.LoginAccountID, + Yw.WinFrmUI.LoginUserInfo.LoginTypeID, + Yw.WinFrmUI.LoginUserInfo.ProjectID, + Yw.WinFrmUI.LoginUserInfo.SoftwareID + ); + //扫描全局DTO映射 TypeAdapterConfig.GlobalSettings.Scan ( @@ -81,30 +105,61 @@ Assembly.Load("HStation.BLL.Xhs.Core") ); DbFirstHelper.Initial(); - Yw.WinFrmUI.GlobalParas.AppIcon = HStation.Desktop.Xhs.Core.Properties.Resources.app; Application.Run(new MainForm()); } } + + ///<summary> /// 这就是我们要在发生未处理异常时处理的方法,我这是写出错详细信息到文本,如出错后弹出一个漂亮的出错提示窗体,给大家做个参考 /// 做法很多,可以是把出错详细信息记录到文本、数据库,发送出错邮件到作者信箱或出错后重新初始化等等 /// 这就是仁者见仁智者见智,大家自己做了。 - ///</summary> + ///</summary>d ///<param name="sender"> </param> ///<param name="e"> </param> private static void Application_ThreadException(object sender, System.Threading.ThreadExceptionEventArgs e) { var ex = e.Exception; - Yw.LogHelper.Error("系统出现未知异常,ERROR:249", ex); - MessageBox.Show($"系统出现未知异常,请重启系统!\r\n{ex.Message}"); + 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); + + } + else + { + Yw.LogHelper.Error("系统出现未知异常,ERROR:249", ex); + MessageBoxHelper.ShowError($"系统出现未知异常,请重启系统!\r\n{ex.Message}"); + } } private static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e) { var ex = e.ExceptionObject as Exception; - Yw.LogHelper.Error("系统出现未知异常,ERROR:255", ex); - MessageBox.Show($"系统出现未知异常,请重启系统!\r\n{ex.Message}"); + if (ex is Yw.Vmo.VException internalEx) + { + Yw.LogHelper.Error("系统出现内部异常,ERROR:249", internalEx); + var dlg = new Yw.WinFrmUI.VmoExceptionInfoDlg(); + dlg.SetBindingData(internalEx); + dlg.ShowDialog(); + } + else + { + Yw.LogHelper.Error("系统出现未知异常,ERROR:255", ex); + 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