C# 重启互斥程序的一个方法

作者:互联网

2009-12-04

C#/CSHARP教程

在程序运行结束时释放互斥对象,然后执行重启。

        static string mutexFlagStr = "TEST1";
        static public bool requestRestart = false;
        static void Main()
        {

            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            // 通过互斥来防止程序多重启动
            bool blnCreate;
            Mutex m = new Mutex(true, mutexFlagStr, out   blnCreate);
            if (blnCreate)
            {
                Application.Run(new FormMain());
                m.ReleaseMutex();
                m.Close();
                if (requestRestart)
                {
                    Application.Restart();
                }
            }
            else
            {
                MessageBox.Show("程序已经启动,不能再次启动!");
                Application.Exit();
            }

        }

在执行重启时,先将requestRestart 赋值为true,然后执行Application.Exit();
-

 

相关标签:

C# 重启互斥程序的一个方法