有没有一种方法来获取窗口句柄(IntPtr的)为其后从C#应用程序启动了的Process.Start()的窗口?
Answer 1:
如果它是你后的主窗口, Process.MainWindowHandle
会给你你所需要的。
Answer 2:
使用
process.MainWindowHandle;
这可能是0启动应用程序的时候,所以,直到它被填满你可能要循环和睡眠。
Answer 3:
这不是一个近期的话题,但答案是不完整的。
我同意Process.MainWindowHandle解决方案和等待的价值,但不与睡眠。
如果你刚开始的过程,并希望使用它的主窗口句柄,可以考虑使用WaitForInputIdle方法让这个进程完成启动,确保主窗口句柄已创建。
Process.WaitForInputIdle
这种过载仅适用于处理与用户接口,因此,一个消息循环。
Answer 4:
你也可以在过程调用刷新(),以确保在准确的信息
文章来源: C# get window handle after starting a process