天天看點

C#開發的程式隻允許啟動一個【彈窗提示】

我們用C#開發程式往往會忽略一些細節問題:

比如我們主程式啟動

在此點選主程式又啟動一個

這時候我們需要做一個防呆處理。

我們可以使用互斥體Mutex類型完成此功能

具體看代碼:

/// <summary>
        /// 應用程式的主入口點。
        /// </summary>
        [STAThread]
        static void Main(string[] args)
        {
            CommTool.ExceptionHandling.CatchGlobalException();
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            /*使程式隻能啟動一個*/
            //聲明互斥體
            Mutex mutex = new Mutex(false, "ThisShouldOnlyRunOnce");
            //判斷互斥體是否在使用中
            bool Runing = !mutex.WaitOne(0,false);
            if (!Runing)
            {
                Application.Run(new Form1());
            }
            else
            {
                MessageBox.Show("已經有一個執行個體運作中!");
            }
           

這樣我們就可以防止啟動多個主程式。