2

我正在编写一个 C# 应用程序来执行旧版 Win32 应用程序的测试自动化。这些测试需要运行应用程序、按下按钮并通过阅读标签文本来验证结果。我的测试平台仅限于 .NET 2.0,因此我的应用程序无法使用System.Windows.Automation.

关于如何使用 user32.dll 中的 WinAPI 调用与按钮等控件进行交互的信息非常丰富。但是,标签不是控件,也没有自己的hWnd句柄来使用WM_GETTEXT消息,我一直无法找到如何提取它们的文本。

我过去使用过企业(昂贵的)测试软件,它能够将标签识别为对象并读取它们的文本。该软件中的帮助文件含糊地解释了它是如何完成的,并且它是通过监视 Windows 库调用来完成的。

那么关于如何在 .NET 中捕获标签文本的任何想法,可能使用 Windows DLL?

4

1 回答 1

0

我假设您无法控制旧版 Win32 应用程序中的代码。

所以,这可能是一个糟糕的想法(不,这实际上一个糟糕的想法)。但作为最后的拼凑,将其视为最坏的情况,您可以 1) 以编程方式截取活动窗口的屏幕截图,然后 2) OCR 生成图像(可能使用this)。

于 2013-03-05T22:47:12.157 回答