【发布时间】:2012-03-27 07:38:00
【问题描述】:
是否可以在另一个窗口内运行 Windows 应用程序(打开顶级窗口)?或者设置一个拥有该窗口的备用“桌面”/假桌面?
我正在使用 UI 自动化来自动化应用程序以进行测试。我想将被测试的应用程序放在一种沙箱中:桌面和应用程序之间的人造父窗口,或伪桌面,第二个桌面等。这个桌面(和被测应用程序)不需要可见。
被测应用程序的不同实例(在普通桌面或沙盒中)不应相互冲突(窗口名称/类明智)——被测应用程序可以安全地拥有多个实例...
我意识到这看起来很老套,所以欢迎使用 win32 hack。 :)
【问题讨论】:
-
支持,您可以调用 SetParent() 将窗口粘贴到您的一个窗口中。实际上根本没有帮助,您仍然需要窗口句柄来做任何有意义的事情。调用 GetWindowRect() 完成同样的事情。
标签: windows winapi ui-automation