Winforms 最小化窗口上的WIndows GUI自动化
作为免责声明,我对Win32开发一点也不熟悉。我想知道,如果GUI应用程序被最小化,是否有任何方法可以自动控制GUI应用程序的输入。我见过的大多数自动化工具都专门使用窗口的坐标偏移(tlx,tly)。我不需要一个测试框架,我只想让我自己的应用程序在最小化(不同的封闭源代码)的应用程序上执行一些操作。我谈论得越多,可能性就越小。任何关于如何实现这一点的意见都是值得赞赏的。您可能可以使用,或者,我确实知道这是可能的,因为我见过做这类事情的游戏机器人。好的,您了解默认最小化行为的最简单方法是使用一些简单的工具,例如Winforms 最小化窗口上的WIndows GUI自动化,winforms,winapi,Winforms,Winapi,作为免责声明,我对Win32开发一点也不熟悉。我想知道,如果GUI应用程序被最小化,是否有任何方法可以自动控制GUI应用程序的输入。我见过的大多数自动化工具都专门使用窗口的坐标偏移(tlx,tly)。我不需要一个测试框架,我只想让我自己的应用程序在最小化(不同的封闭源代码)的应用程序上执行一些操作。我谈论得越多,可能性就越小。任何关于如何实现这一点的意见都是值得赞赏的。您可能可以使用,或者,我确实知道这是可能的,因为我见过做这类事情的游戏机器人。好的,您了解默认最小化行为的最简单方法是使用一些简
计算器。只需启动它并使用Microsoft Spy++
查看表示计算器窗口中某个按钮的窗口的属性
就我而言,我看到:
- 正常状态下:矩形(1096222)-(1130249),34x27
- 处于最小化状态:矩形(-31911,-31839)-(31877,-31812),34x27
- 应用程序可以自定义其最小化行为,例如完全破坏窗口-切换到托盘
- 即使您成功地向所需的控件发送了必要的消息-应用程序的逻辑可能是一个障碍-例如,它可能取决于IsWindowVisible的结果,它可能假设窗口矩形坐标始终为正,等等
- 有一个Python解决方案可以解决这些问题-
例如:
尽管WinForms部分受支持,但可以使用未识别控件的相对坐标来完成简单操作,如静默单击(
click
method)