须要外挂一个程序,用于监控另外一个程序运行状态,一旦检测到另外一程序关闭,就触发一个事件作其余处理。blog
引用的类进程
using System.Diagnostics;//引入Process 类
声明事件
private Process[] MyProcesses;
主要处理部分,该段代码可放在定时器中循环检测监控的程序是否启动it
MyProcesses = Process.GetProcessesByName("SajetManager");//须要监控的程序名,该方法带出该程序全部用到的进程 foreach (Process myprocess in MyProcesses) { textBox1.Text += myprocess.ProcessName + "\r\n"; if (myprocess.ProcessName.ToLower() == "sajetmanager") { MessageBox.Show("SajetManager"); myprocess.EnableRaisingEvents = true;//设置进程终止时触发的时间 myprocess.Exited += new EventHandler(myprocess_Exited);//发现外部程序关闭即触发方法myprocess_Exited } }
private void myprocess_Exited(object sender, EventArgs e)//被触发的程序 { MessageBox.Show("SajetManager close"); }