自动化下拉菜单,使用C ++按钮单击

时间:2014-09-19 15:06:42

标签: c++ visual-c++ mfc ui-automation hwnd

我有一个EXE用于应用程序“MyWindow1”,它启动了一个窗口,它有几个下拉菜单,几个按钮等。

我没有此应用程序“MyWindow1”的源代码。我只是它的EXE&一些依赖的DLL,它是启动它的窗口和放大器所必需的。做它的功能。

现在我有另一个C ++模块,我通过使用“CreateProcess()API”自动启动这个“MyWindow1”应用程序。使用“system(taskkill)”自动结束。

但我甚至想要自动选择下拉菜单,只需按几下按钮就可以点击此“MyWindow1”应用程序中的按钮。 有没有办法我可以自动化这个,即使我没有这个“MyWindow1”应用程序的源代码(可能使用MFC)

3 个答案:

答案 0 :(得分:3)

使用SendInput模拟击键和鼠标移动。模拟击键可能是自动化菜单的最准确方法。

此外,杀死进程并不是一种非常干净的退出方式。您可以将WM_CLOSE发送到主窗口,或通过SendInput继续自动执行按键,以便按用户的方式正常退出。

答案 1 :(得分:1)

使用类似autohotkey(http://www.autohotkey.com/)之类的东西可能最容易,并生成带有C ++的不同autohotkey脚本。根据维基百科(http://en.wikipedia.org/wiki/AutoHotkey),Autohotkey还有一个用户提供的.Net互操作库。

答案 2 :(得分:0)

我推荐pywinauto Python包。我定期将它用于MFC应用程序。您可以在作者的网站上找到演示视频。