c#啓動關閉進程

以前關閉進程的方式,通常採用bat文件的方式。現在通過採用另外一種方式關閉進程。

關閉進程主要思路:遍歷所有進程,根據進程名稱,找出需要關閉的進程。

開啓進程主要思路:通過遞歸的方式找出文件夾中所有的exe文件,並且開啓。

其主要代碼如下:

 

1 #region 方法
2 /// <summary>
3 /// 關閉應用程序
4 /// </summary>
5 /// <param name="ArrayProcessName">應用程序名之間用‘,’分開</param>
6 private void CloseApp(string ArrayProcessName)
7 {
8 string[] processName = ArrayProcessName.Split(',');
9 foreach (string appName in processName)
10 {
11 Process[] localByNameApp = Process.GetProcessesByName(appName);//獲取程序名的所有進程
12 if (localByNameApp.Length > 0)
13 {
14 foreach (var app in localByNameApp)
15 {
16 if (!app.HasExited)
17 {
18 app.Kill();//關閉進程
19 }
20 }
21 }
22 }
23 }
24
25 /// <summary>
26 /// 開啓進程
27 /// </summary>
28 /// <param name="ArrayFolderPath">需要開啓進程文件夾的路徑,多個路徑用‘,’隔開;eg:d:\test,e:\temp</param>
29 private void StartApp(string ArrayFolderPath)
30 {
31 string[] foldersNamePath = ArrayFolderPath.Split(',');
32 foreach (string folderNamePath in foldersNamePath)
33 {
34 GetFolderApp(folderNamePath);
35 }
36 }
37
38 /// <summary>
39 /// 遞歸遍歷文件夾內所有的exe文件,此方法可以進一步擴展爲其它的後綴文件
40 /// </summary>
41 /// <param name="folderNamePath">文件夾路徑</param>
42 private void GetFolderApp(string folderNamePath)
43 {
44 string[] foldersPath = Directory.GetDirectories(folderNamePath);
45 foreach (string folderPath in foldersPath)
46 {
47 GetFolderApp(folderPath);
48 }
49
50 string[] filesPath = Directory.GetFiles(folderNamePath);
51 foreach (string filePath in filesPath)
52 {
53 FileInfo fileInfo = new FileInfo(filePath);
54
55 //開啓後綴爲exe的文件
56 if (fileInfo.Extension.Equals(".exe"))
57 {
58 Process.Start(filePath);
59 }
60 }
61
62 }
63 #endregion

winform的界面如下:

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