(Process类在System.Diagnostics命名空间下)

 

【1】获取本地计算机所有进程

 1 Progress[] myProgress = Progress.GetProcesses(); 

 

【2】获取本地计算机上指定的名称的进程

 1 Process[] myProcess = Process.GetProcessesByName("进程名称"); 

如: 1 Process[] myProcess = Process = Process.GetProcessByNeme("Notepad++"); 

 

【3】获取远程计算机的所有进程

 1 Process[] myProcess = Process.GetProcesses(remoteMachineName); 

其中remoteMachineName可以是远程计算机名称,也可以是远程计算机IP地址

 

【4】获取远程计算机上指定名称的进程

 1 Process[] myProcess = Process.GetProcessesByName(processName, remoteMachineName); 

其中processName是不包括.exe或路径名的进程名称

 

例子:

 1 using System;
 2 using System.Diagnostics;
 3 
 4 namespace ProcessLocal
 5 {
 6     class Program
 7     {
 8         static void Main(string[] args)
 9         {
10             Process[] myProcess = Process.GetProcesses();
11             Console.Write("进程ID\t");
12             Console.Write("进程名称\t");
13             Console.Write("物理内存\t");
14             Console.Write("启动时间\t");
15             //Console.Write("文件路径");
16             Console.WriteLine();
17             foreach (Process p in myProcess)
18             {
19                 Console.Write(p.Id + "\t");
20                 Console.Write(p.ProcessName + "\t");
21                 Console.Write(string.Format("{0:###,##0.00}MB", p.WorkingSet64 / 1024.0f / 1024.0f) + "\t");
22                 //部分进程无法获取启动时间和文件名信息,所以要用try/catch
23                 try
24                 {
25                     Console.Write(String.Format("{0}", p.StartTime) + "\t");
26                     //Console.Write(p.MainModule.FileName + "\t");
27                 }
28                 catch
29                 {
30                     //Console.Write( "\t");
31                     Console.Write("\t");
32                 }
33                 Console.WriteLine();
34 
35             }
36 
37             Console.Read();
38         }
39     }
40 }

 

启动进程:

 1 using System;
 2 using System.Diagnostics;
 3 
 4 namespace ProcessLocal
 5 {
 6     class Program
 7     {
 8         static void Main(string[] args)
 9         {
10             // 1.启动进程
11             Process myProcess = new Process();
12             // 准备启动的进程,在这里是Notepad++
13             myProcess.StartInfo.FileName = "Notepad++.exe";
14             // 创建或者打开Text1.txt文件
15             myProcess.StartInfo.Arguments = "Test1.txt";
16             // 如果启动的进程带有窗口,则在这里是正常化窗口
17             myProcess.StartInfo.WindowStyle = ProcessWindowStyle.Normal;
18             // 启动指定进程
19             myProcess.Start();
20         }
21     }
22 }

posted on 2016-06-07 14:15  深天啦啦  阅读(3044)  评论(0编辑  收藏  举报