Process组件启动和停止进程。
1、关键技术
Process的属性
(1)StartInfor属性
用于获取或设置要传递给Process的Start方法的属性。
(2)Start方法
启动(或重用)此Process组件的StartInfo属性指定的进程资源,并将其与该组件关联。
(3)GetProcessByName
创建新的Process组件的数组,并将其与本地计算机上共享指定的进程名称的所有进程资源关联
public static Process[] GetProcessesByName(string processName);
2、设计过程
- private void Form1_Load(object sender, EventArgs e)
- {
- // 设置要启动的应用程序
- process1.StartInfo.FileName = "notepad.exe";
- }
- private void button1_Click(object sender, EventArgs e)
- {
- // 启动记事本进程
- process1.Start();
- }
- private void button2_Click(object sender, EventArgs e)
- {
- // 声明一个进程数组
- System.Diagnostics.Process[] myProcess;
- // 获取当前的所有记事本进程
- myProcess = System.Diagnostics.Process.GetProcessesByName("Notepad");
- // 循环遍历数组中的每个元素
- foreach (System.Diagnostics.Process instance in myProcess)
- {
- // 关闭拥有用户界面的进程
- instance.CloseMainWindow();
- // 在指定的时间内等待关联进程的退出
- instance.WaitForExit(3000);
- // 释放与此组件相关联的所有资源
- instance.Close();
- }
- }