微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – ProcessStartInfo.UseShellExecute = true并等待进程退出

我想使用 shell可执行文件来尊重启动应用程序的用户首选项,但我还需要知道该特定应用程序何时关闭.

Process editProcess = new Process();
processstartinfo startInfo = new processstartinfo();
startInfo.FileName = filename;
startInfo.Verb = "edit";
startInfo.UseShellExecute = true;
editProcess.StartInfo = startInfo;

// start the default editor
editProcess.Start();
editProcess.WaitForExit();

WaitForExit似乎在shell进程退出时返回,而不是在真正的进程退出时返回.

有没有更好的方法知道何时启动应用程序退出而不是手动解析注册表,找到正确的应用程序启动并显式启动该应用程序而不执行shell?

解决方法

处理流程退出事件:

editProcess.Exited += process_Exited;

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐