进程管理(Process类)

(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 }

转载于:https://www.cnblogs.com/DeepinSky/p/5566813.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值