C#实现软件监控外部程序运行状态的方法
程序员文章站
2023-12-15 19:34:52
本文实例讲述了c#实现软件监控外部程序运行状态的方法。分享给大家供大家参考。具体方法如下:
需要外挂一个程序,用于监控另一个程序运行状态,一旦检测到另一程序关闭,就触发一...
本文实例讲述了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");
}
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#程序设计有所帮助。