可以在另一个窗口中运行windows应用程序(打开一个顶级窗口)吗?或者设置一个替代的‘桌面’/假桌面,它拥有这个窗口?
我正在使用UI Automation自动化应用程序以进行测试。我想将应用程序放在一种沙箱中进行测试:桌面和应用程序之间的人工父窗口,或伪桌面,第二个destop等。这个桌面(和测试中的应用程序)不需要是可见的。
被测应用程序的不同实例(在普通桌面上或在沙箱中)不应该相互冲突(窗口名称/类) --被测应用程序拥有多个实例是安全的……
我知道这看起来有点像黑客,所以win32黑客应该是受欢迎的。:)
发布于 2012-03-10 05:48:22
您可以尝试使用CreateDesktop创建桌面,并在启动目标应用程序时在STARTUPINFO中传递其名称。
发布于 2012-03-10 20:00:56
如果您正在自动化一个用于测试的应用程序,那么我猜您正在尝试为要测试的应用程序创建一个SandBox。这里有一个非常好的good library by Liu Yu,也可以看看这个:Create Sandbox C#和How to create a lightweight C code sandbox?
https://stackoverflow.com/questions/9641073
复制相似问题