C#软件监控外部程序运行状态

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


引用的类

using System.Diagnostics;//引入Process 类 

声明

private Process[] MyProcesses;

主要处理部分,该段代码可放在定时器中循环检测监控的程序是否启动

            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");
        }


C#软件监控外部程序运行状态

上一篇:win7下安装cygwin工具


下一篇:C#默认以管理员身份运行程序实现代码