C#实现软件监控外部程序运行状态的方法

本文实例讲述了C#实现软件监控外部程序运行状态的方法。分享给大家供大家参考。具体方法如下:

需要外挂一个程序,用于监控另一个程序运行状态,一旦检测到另一程序关闭,就触发一个事件做其他处理。

using System.Diagnostics;//引入Process 类
private Process[] MyProcesses;
MyProcesses = Process.GetProcessesByName("SajetManager");//需要监控的程序名,该方法带出该程序所有用到的进程
foreach (Process myprocess in MyProcesses)
{
    textBox1.Text += myprocess.ProcessName + "
";
    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");
}