示例#1
0
        static void Main()
        {
            bool createNew = false;
            ////系统能够识别有名称的互斥,因此可以使用它禁止应用程序启动两次
            ////第二个参数可以设置为产品的名称:Application.ProductName
            ////每次启动应用程序,都会验证程序名称的互斥是否存在
            Mutex mutex = new Mutex(true, "ParamsSettingTool", out createNew);

            try
            {
                if (!createNew)
                {
                    UtilityTool.BringProcessToFrontByPath(Application.ExecutablePath); //若程序已启动,则激活程序并置前

                    Application.Exit();
                    return;
                }
                Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);

                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                DevExpress.Skins.SkinManager.EnableFormSkins();
                DevExpress.UserSkins.BonusSkins.Register();
                //   HintProvider.StartWaiting(null, "正在启动参数设置工具", "", Application.ProductName, showDelay: 0, showCloseButtonDelay: int.MaxValue);
                var main = new MainForm();
                Application.Run(main);
                //var Login = new InputPsdForm();
                //Application.Run(Login);
            }
            finally
            {
                if (createNew)
                {
                    mutex.ReleaseMutex();
                }
            }
        }