static void Main() { try { SysStart();//启动 /*检测自动更新标志BEGIN*/ bool outCheckUpdateFlag = false; if (FParamConfig.SystemDBConnType == 1)//如果是传统模式检测自动更新 { CheckAutoUpdate(out outCheckUpdateFlag); if (outCheckUpdateFlag) { Application.Exit(); } } else { outCheckUpdateFlag = false; } /*检测自动更新标志END*/ if (!outCheckUpdateFlag) { frmLogin3 frmLogin = new frmLogin3();//显示登录窗体 frmLogin.ShowDialog(); if (!FParamConfig.LoginFlag) { Application.Exit(); } else { SysStartEnd(); Application.EnableVisualStyles(); //样式设置 //Application.SetCompatibleTextRenderingDefault(false); //样式设置 frmSplash3 sp = new frmSplash3(); //启动窗体 sp.Show(); //显示启动窗体 context = new ApplicationContext(); context.Tag = sp; Application.Idle += new EventHandler(Application_Idle); //注册程序运行空闲去执行主程序窗体相应初始化代码 Application.Run(context); //Application.Run(new frmStart()); } } } catch (Exception E) { MessageBox.Show("启动异常,系统退出" + Environment.NewLine + E.Message); Application.Exit(); } }
//初始化等待处理函数 private static void Application_Idle(object sender, EventArgs e) { Application.Idle -= new EventHandler(Application_Idle); if (context.MainForm == null) { //Main mw = new Main(); frmStart mw = new frmStart(); context.MainForm = mw; mw.Init(); //主窗体要做的初始化事情在这里,该方法在主窗体里应该申明为public frmSplash3 sp = (frmSplash3)context.Tag; sp.Close(); //关闭启动窗体 mw.Show(); //启动主程序窗体 } }