使用 Process.Start() 方法启动应用程序后的通知
本文关键字:应用程序 通知 启动 方法 Process Start 使用 | 更新日期: 2023-09-27 18:37:23
我有一段代码,基本上是使用Process.Start()
方法调用应用程序。
ProcessStartInfo psi = new ProcessStartInfo(strAppPath);
psi.WindowStyle = ProcessWindowStyle.Maximized | ProcessWindowStyle.Normal;
//Starts the xyz application process.
Process xyzProcess = Process.Start(psi);
xyzProcess.WaitForInputIdle();
尽管该过程在几秒钟内启动,但应用程序可能需要一些时间才能完全初始化。 即我的应用程序xyz
可能需要 5 - 10 秒,具体取决于它运行的机器(即在速度较快的 PC 上不到 5 秒,在速度较慢的 PC 上不到>10 秒)
我的问题:有没有办法跟踪这个?通过轮询一些属性,除了等待一段时间使用Thread.Sleep(ms)
.
我徒劳地尝试使用以下应用程序
投票
xyzProcess.Responding
财产与一个小thread.sleep
轮询的肮脏方法
xyzProcess.MainWindowTitle
直到它返回一些非空值。xyzProcess.WaitForInputIdle(sleeptime)
;
请帮忙
谢谢
您只是在等待应用程序初始化,还是只是等待应用程序执行某些操作?
如果只是应用程序需要"做某事",那么您可以不等待退出吗?
xyzProcess.WaitForExit();