如何判断第三方程序已开启就绪?

jshzp 2012-05-08 11:05:50
程序中使用Process方法启动了第三方程序T,T开启到出现窗体界面需要2秒至一分钟,我想及时判断出T已经就绪以便代码进行下一步操作,应该用什么方法?
p.WaitForInputIdle();可能是方法之一,但是不太理想,因为程序可能会因T出问题而死机;
循环方式判断寻找T的窗体,这个方法效率低了点;
哪种方法好?望高手指点,谢谢!
...全文
117 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
a547428081 2012-05-09
  • 打赏
  • 举报
回复
应该是你的程序执行顺序没弄好吧
jshzp 2012-05-09
  • 打赏
  • 举报
回复
我实际调试中发现:往往p的窗口还未出现,p.WaitForInputIdle()方法已经返回了。是我没用对,还是别的原因?
jshzp 2012-05-08
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
你能否传递给T进程一个参数呢,就是你的窗体的句柄,T中准备好后,发消息给你,你接受
[/Quote]
T是第三方的,例如记事本。
bdmh 2012-05-08
  • 打赏
  • 举报
回复
你能否传递给T进程一个参数呢,就是你的窗体的句柄,T中准备好后,发消息给你,你接受
令狐苦瓜 2012-05-08
  • 打赏
  • 举报
回复
打开IE,输入http://www.google.com搜索“.NET执行外部程序并获取返回值”,敲回车

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧