using DevExpress.LookAndFeel; using HStation.WinFrmUI; using Mapster; namespace PBS.Desktop { internal static class Program { /// /// The main entry point for the application. /// [STAThread] private static void Main() { using (var mutex = new System.Threading.Mutex(true, Application.ProductName, out bool createNew)) { if (!createNew) { MessageBox.Show("³ÌÐòÕýÔÚÔËÐÐÖÐ..."); Application.Exit(); return; } //DevExpress.UserSkins.BonusSkins.Register(); //DevExpress.LookAndFeel.UserLookAndFeel.Default.SetSkinStyle("Bezier");//Visual Studio 2013 Light //DevExpress.LookAndFeel.UserLookAndFeel.Default.SetSkinStyle(SkinSvgPalette.Bezier.OfficeColorful); DevExpress.Skins.SkinManager.EnableFormSkins(); System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("zh-Hans"); System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("zh-Hans"); //´¦Àíδ²¶»ñµÄÒì³£ Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException); //´¦ÀíUIÏß³ÌÒì³£ Application.ThreadException += Application_ThreadException; //´¦Àí·ÇUIÏß³ÌÒì³£ AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); //×ÖÌå var font = new System.Drawing.Font("΢ÈíÑźÚ", 10); DevExpress.XtraEditors.WindowsFormsSettings.DefaultFont = font; DevExpress.XtraEditors.WindowsFormsSettings.DefaultMenuFont = font; DevExpress.Utils.AppearanceObject.DefaultFont = font; //zh-Hans½çÃæ·­Òë System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("zh-Hans"); System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("zh-Hans"); //Ƥ·ô DevExpress.LookAndFeel.UserLookAndFeel.Default.SetSkinStyle(SkinStyle.WXICompact); // To customize application configuration such as set high DPI settings or default font, // see https://aka.ms/applicationconfiguration. ApplicationConfiguration.Initialize(); Yw.WinFrmUI.GlobalParas.AppIcon = PBS.Desktop.Properties.Resources.app; #region ÑéÖ¤Éý¼¶ //try //{ // if (AutoUpdateHelper.NeedExist()) // return; //} //catch (Exception ex) //{ // LogHelper.Error("ÑéÖ¤Éý¼¶´íÎó", ex); //} #endregion ÑéÖ¤Éý¼¶ if (!LoginHelper.Login()) { return; } //ɨÃèÈ«¾ÖDTOÓ³Éä TypeAdapterConfig.GlobalSettings.Scan ( //Assembly.Load("Yw.BLL.Auth.Core"), //Assembly.Load("Yw.BLL.Bimface.Core"), //Assembly.Load("Yw.BLL.Hydro.Core"), //Assembly.Load("Yw.BLL.Map.Core"), //Assembly.Load("HStation.BLL.Xhs.Core") ); DbFirstHelper.Initial(); Application.Run(new MainForm()); } } /// /// Õâ¾ÍÊÇÎÒÃÇÒªÔÚ·¢Éúδ´¦ÀíÒ쳣ʱ´¦ÀíµÄ·½·¨£¬ÎÒÕâÊÇд³ö´íÏêϸÐÅÏ¢µ½Îı¾£¬Èç³ö´íºóµ¯³öÒ»¸öƯÁÁµÄ³ö´íÌáʾ´°Ì壬¸ø´ó¼Ò×ö¸ö²Î¿¼ /// ×ö·¨ºÜ¶à£¬¿ÉÒÔÊǰѳö´íÏêϸÐÅÏ¢¼Ç¼µ½Îı¾¡¢Êý¾Ý¿â£¬·¢Ëͳö´íÓʼþµ½×÷ÕßÐÅÏä»ò³ö´íºóÖØÐ³õʼ»¯µÈµÈ /// Õâ¾ÍÊÇÈÊÕß¼ûÈÊÖÇÕß¼ûÖÇ£¬´ó¼Ò×Ô¼º×öÁË¡£ ///d /// /// private static void Application_ThreadException(object sender, System.Threading.ThreadExceptionEventArgs e) { var ex = e.Exception; 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:249", ex); MessageBoxHelper.ShowError($"ϵͳ³öÏÖδ֪Òì³££¬ÇëÖØÆôϵͳ£¡\r\n{ex.Message}"); } } private static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e) { var ex = e.ExceptionObject as Exception; 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}"); } } } }