作为免责声明,我对Win32开发并不熟悉。我想知道是否有任何方法可以自动化GUI应用程序的控制输入,如果该应用程序最小化。我见过的大多数自动化工具都专门使用窗口中的坐标偏移量(tlx,tly)。我不需要测试框架,我只是希望我自己的应用程序在最小化(不同 - 闭源)应用程序上引起一些操作。我谈到它,似乎越少越好。如何实现这一目标,我们对此表示赞赏。
答案 0 :(得分:4)
好的,您熟悉默认最小化行为的最简单方法是使用简单的方法,例如: Calculator
。只需启动它并使用Microsoft Spy++
查看表示计算器窗口中某个按钮的窗口的属性。
就我而言,我看到了:
因此,默认情况下,最小化会通过将窗口移动到很远的位置来更改窗口位置。如果你能够保留HWND,那么你仍然可以发送你需要的任何窗口信息。
要记住的事情:
答案 1 :(得分:0)
您可以使用PostMessage或SendMessage执行此操作,我知道它可能,因为我已经看过这样做的游戏机器人......
答案 2 :(得分:0)
有一种Python解决方案可以解决这些问题 - pywinauto。
示例:Python - Control window with pywinauto while the window is minimized or hidden
虽然部分支持WinForms,但可以使用非识别控件的相对坐标来完成诸如静默点击(Click
方法)之类的简单操作。