C#實現(xiàn)關(guān)閉其他程序窗口或進程代碼分享
在進行winform開發(fā)過程中有時候會需要關(guān)閉其他程序或者關(guān)閉進程,以前寫過一篇相關(guān)介紹的文章,今天有同事問起來,于是在次翻出來和大家分享一下。
下面介紹我所知的兩種方法,應(yīng)該對大家有幫助,如果有朋友知道其他的方法,謝謝共享一下。
方法1
ProcName 需要關(guān)閉的進程名稱
private bool closeProc(string ProcName) { bool result = false; System.Collections.ArrayList procList = new System.Collections.ArrayList(); string tempName = ""; foreach (System.Diagnostics.Process thisProc in System.Diagnostics.Process.GetProcesses()) { tempName = thisProc.ProcessName; procList.Add(tempName); if (tempName == ProcName) { if (!thisProc.CloseMainWindow()) thisProc.Kill(); //當發(fā)送關(guān)閉窗口命令無效時強行結(jié)束進程 result = true; } } return result; }
上面程序里定義了一個ArrayList,當不知道所要關(guān)閉的進程的具體名稱的時候,可以將ArrayList 中的值放到一個listbox或其他的控件里面用來選擇進程進行結(jié)束。
方法2
在類體中的最上方聲明:
[DllImport("user32.dll", CharSet=CharSet.Auto)] public static extern int SendMessage(int hWnd, int msg, int wParam, int lparam); //SendMessage(hwnd1,WM_CLOSE,0,0); //hwnd1是你用findwindow函數(shù)返回的句柄值 //wm_close定義在winuser.h里面 //0x0010是 WM_CLOSE的值 SendMessage(hwnd1,0x0010,0,0);
相關(guān)文章
C# Winform 實現(xiàn)控件自適應(yīng)父容器大小的示例代碼
這篇文章主要介紹了C# Winform 實現(xiàn)控件自適應(yīng)父容器大小的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03C#使用is、as關(guān)鍵字以及顯式強轉(zhuǎn)實現(xiàn)引用類型轉(zhuǎn)換
這篇文章介紹了C#使用is、as關(guān)鍵字以及顯式強轉(zhuǎn)實現(xiàn)引用類型轉(zhuǎn)換的方法,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-08-08