C#檢測同個程序被打開或運行多次

有時在做一個C#的程序時,你並不希望用戶重複打開多個,爲了避免程序被重複打開所帶來的不確定因素,就需要在程序運行前做一些處理,來提示使用者。這裏提供一種方法,親測有效。

可以在應用程序的主入口點Main函數裏添加,也可以在項目的第一個窗體的啓動事件中 如form1_load() 中添加如下語句

    //獲取指定的進程名  

     System.Diagnostics.Process[] myProcesses = System.Diagnostics.Process.GetProcessesByName("這裏是你的程序進程名");
            if (myProcesses.Length > 1) //如果可以獲取到知道的進程名大於一個,則說明在此之前已經啓動過
            {
                MessageBox.Show("檢測到程序已經運行,請先關閉多餘的程序和進程!");
                Application.Exit();              //關閉
            }         

這裏只是檢測並提醒的功能,並不能夠關閉掉相應的進程,所以最終還是要用戶自己手動關閉。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章