1

我正在开发一个项目,该项目应该使用 Windows 窗体(一个基本的计算器采用两个整数,一个运算符并有一个等号按钮)使用 C++ 编写的程序,并使用 C++ 和低级 WinAPI 调用使其自动化。

我一直在谷歌上搜索,但我找到的大多数参考资料都相当古老,我想确保我朝着正确的方向前进。我看到了 OLE 自动化,但不确定这是否是正确的方向

我所知道的:我不能使用 Reflection,包括 Visual Studio 的 UI/测试自动化程序集在内的任何 3rd 方库。

我假设无论我使用什么,我都会启动应用程序,通过它的标题获取窗口,通过元素名称以某种方式获取每个元素,模拟点击,读取计算值等等。这就是问题所在

4

1 回答 1

0

听起来您熟悉窗口句柄等基础知识,因此我将跳过该部分,但这里有一些提示可以帮助您入门:

查找窗体的控制窗口 - EnumChildWindows()

向每个窗口发送消息 - SendMessage()

最后,您可以发送到按钮的消息列表 -按钮消息(对于您的程序,请特别查看 BM_CLICK 消息)

您可以通过查看“msdn 编辑控件(等)消息”找到其他每个控件消息的 MSDN 参考。

于 2013-01-30T00:37:02.877 回答