C#如何判断程序调用的exe已结束

rt补充一下,我需要的是当调用的exe执行完毕并且自动关闭时要能给调用的程序一个信息指明调用程序一结束我看了下,说用回调函数可以但是不会用,有人可以给个事例么... rt
补充一下,我需要的是当调用的exe执行完毕并且自动关闭时要能给调用的程序一个信息指明调用程序一结束
我看了下,说用回调函数可以
但是不会用,有人可以给个事例么
展开
 我来答
百度网友9095754
推荐于2018-03-23 · TA获得超过2574个赞
知道小有建树答主
回答量:905
采纳率:0%
帮助的人:1070万
展开全部
二个方法:以运行系统记事本为例

方法一:这种方法会阻塞当前进程,直到运行的外部程序退出
System.Diagnostics.Process exep = System.Diagnostics.Process.Start(@"C:\Windows\Notepad.exe");
exep.WaitForExit();//关键,等待外部程序退出后才能往下执行
MessageBox.Show("Notepad.exe运行完毕");

方法二:为外部进程添加一个事件监视器,当退出后,获取通知,这种方法时不会阻塞当前进程,你可以处理其它事情
System.Diagnostics.Process exep = new System.Diagnostics.Process();
exep.StartInfo.FileName = @"C:\Windows\Notepad.exe";
exep.EnableRaisingEvents = true;
exep.Exited += new EventHandler(exep_Exited);
exep.Start();

//exep_Exited事件处理代码,这里外部程序退出后激活,可以执行你要的操作
void exep_Exited(object sender, EventArgs e)
{
MessageBox.Show("Notepad.exe运行完毕");
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
liyangfd
2010-04-30 · TA获得超过181个赞
知道小有建树答主
回答量:232
采纳率:50%
帮助的人:91.6万
展开全部
判读调用的进程是否存在就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式