windows - Spy++ 等软件如何获取信息?

标签 windows winapi desktop

我正在开发一款用于测试自动化的软件。要使其正常工作,需要“查看”桌面和所有打开的窗口。它需要知道打开了哪些窗口以及它们包含哪些控件。所以它必须做一些类似于 Spy++ 正在做的事情(来自 Visual Studio 的 Spy++)。 有谁知道 Spy++ 是如何获取所有信息的? 是否可以调用任何 Windows 方法来检索有关打开的窗口的信息?

最佳答案

您可以使用 EnumWindows获取所有顶级窗口。在 lpEnumFunc 中,您可以调用 FindWindowEx获取每个顶级窗口的子窗口/控件,然后获取任何其他为您提供所需信息的有趣功能,例如GetClassName , GetClassInfo , GetClientRect等等等等看看here更多

关于windows - Spy++ 等软件如何获取信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/764960/

相关文章:

winapi - 获取父窗口的正确方法

Java 桌面应用程序 - 哪种技术?

macos - Mac 上的实时动态壁纸(桌面)

windows - 黄蓝盾牌图标存放位置

windows - 如何让我的程序在特定文件夹中搜索依赖项?

java - 双击运行 Java 应用程序

java - 用于 Java 桌面 MVC 的 Rails

windows - 使用脚本将 key 发送到 Tableau

windows - GetComputerName WinApi 调用和 %COMPUTERNAME% 环境变量

c++ - 键盘布局方向