delphi - 在不修改源代码的情况下检查 Delphi 控件对象

标签 delphi testing object inspector probe

我有一个Delphi开发的股票程序,我想要一个工具可以从股票程序中读取数据,例如Delphi网格对象中的股票价格。

被测 Stock 程序是封闭源代码,因此没有机会修改 QTP/Robot inspector 所需的源代码。我无法分辨它使用的是哪个 Delphi 版本,该对象也不是标准的 Delphi 控件。

所以任何人都可以告诉是否可以通过其他技术检查该 delphi 程序对象数据?

提前致谢。

最佳答案

您可以使用像Winsight 这样的工具找出程序窗口的结构,并使用FindWindow 和EnumerateChildWindows 找到控件。然后你可以使用 GetWindowText api 来获取控件的文本。这适用于大多数控件,但可能不适用于所有控件。例如 TLabel 控件没有句柄,但它自己绘制。它没有从中获取文本的句柄,也不会显示在 WinSight 中。您必须对窗口进行 OCR 才能获取这些标签文本。 :p

但是这个“测试”对我来说更像是“黑客”或“控制”,如果你甚至不知道使用什么样的控件以及使用哪个版本的 Delphi,你为什么要测试这个程序这条路?

关于delphi - 在不修改源代码的情况下检查 Delphi 控件对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6212739/

相关文章:

javascript - 通过复选框进行多重过滤 - 纯 JS

delphi - 工厂模式、内存泄漏

file - 检查.exe文件的文件版本(服务器端),以及是否有较新的下载文件

java - 是否可以覆盖 JUnit 中的预期异常?

ruby - 从 Cucumber/Capybara 测试中执行 JavaScript

java - 如何创建一个在调用时创建新帐户的对象数组?

javascript - 为什么 Chrome console.log 以如此烦人的方式显示 String 对象?

delphi - 学习 Delphi 最简单/最有效的方法是什么?

forms - Delphi Tab 键顺序

testing - Geb:为每个测试打开新标签