C# 调用 process.start()后如何判断那个进程已经产生窗体

比如我定义:processp=newprocess;p.start(“某个EXE”);然后我调用窗口大小修改API:MoveWindow(p.MainWindowHand... 比如我定义:
process p=new process;
p.start(“某个EXE”);
然后我调用窗口大小修改API:
MoveWindow(p.MainWindowHandle, 0, 0, 1920, 1080 - 32, true);
时发生错误。
我初步认为,从进程产生到窗口打开(那个窗口是游戏的窗口,要打开确实要花些时间)之间有时间差。
那么请问:如何判断窗口已经打开呢?
错误已经解决了,是我手贱注释了一些东西,但是确实如我猜测,我加了延时能正常执行MoveWindow,而不加就不行。如何准确判断窗口生成呢?
展开
 我来答
百度网友862b31c
2015-02-06 · TA获得超过1529个赞
知道小有建树答主
回答量:1045
采纳率:100%
帮助的人:810万
展开全部
如果刚启动了一个进程,并且想使用其主窗口句柄,则请考虑使用 WaitForInputIdle 方法让该进程完成启动,从而确保创建了主窗口句柄。 否则,将引发异常。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式