问题标签 [spy++]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
413 浏览

c++ - 在 Linux 上的 QT 应用程序中识别控件名称/ID

我正在 Redhat Linux 上测试一个 QT 应用程序,许多控件都有图形而不是文本。在 Windows 上,我会使用 Spy++ 来获取控件的 ID/名称,但不确定在 Linux 上使用什么,并且无法在 Google 上找到答案。

我想说:屏幕上的 xyz 按钮 project.com.moduleName.buttonName - 缺少标题,没有按预期执行 x。它应该有标题blah,应该做xyz。

我有哪些选项可以在不查找源代码的情况下找到按钮的名称?

0 投票
0 回答
181 浏览

c# - 如果无法显示自己,如何找到所有子窗口?

如果 Spy++ 无法显示所有子窗口,如何找到它们?如果我通过保存 MessageBox (Win 7) 保存文件,我只能找到 MessageBox 对话框,但找不到它的子对话框。我也看到了单选按钮、确定按钮和取消按钮,但是我在 Spy++ 中找不到它们,并且 PostMessage 无法成功单击它们(没有任何反应)。

0 投票
0 回答
154 浏览

c - 当一个键关闭时,在系统发送 WM_KEYDOWN 之前谁向窗口发送消息?

我有一个在 jp2launcher.exe 中运行的 Java 聊天小程序,我想制作一个简单的工具来模拟键盘消息并将它们发送到聊天窗口,但我失败了。:(

在使用 Microsoft spy++ 观察发送到聊天窗口的消息后,我发现当我按下一个键时,聊天窗口甚至在WM_KEYDOWN, WM_CHAR,消息之前收到了附加消息。WM_KEYUP

这是我按下“ENTER”键时常规窗口接收到的消息序列

正常消息

这是我按下“ENTER”键时Java小程序窗口窗口收到的消息序列

异常消息

正如您所注意到的,Java 窗口收到了来自“某人”的另一条注册消息!就在每个系统消息之前。谁在系统之前发送此消息?这是什么意思?

附加信息:当我使用 PostMessage api 函数并发送WM_KEYDOWNWM_KEYUP消息时,只有当窗口出现并聚焦并且这些额外消息出现在 spy++ 中时,它才会成功,但是当我在聊天窗口最小化或没有焦点时发布它们时,只有我的消息会转到窗口而不是这些额外的消息,并且诅咒密钥不会像预期的那样影响窗口。

谁在系统发送消息之前发送这些额外WM_KEYDOWN消息?

0 投票
1 回答
3196 浏览

c# - 如何获取显示隐藏系统托盘图标的窗口的隐藏窗口句柄

我正在尝试用 C# 编写应用程序来捕获按下按钮时出现的隐藏窗口的句柄(“显示隐藏的图标”)。

当我们不显示所有通知区域时,我们隐藏了系统托盘图标。

当我们按下显示它们的按钮(“显示隐藏图标”)时,我们有一个新窗口,其中包含所有图标:用绿色圆圈标记的隐藏窗口
在此处输入图像描述

我怎样才能抓住这个隐藏窗口的句柄?

当我使用 Spy++ 时,我找不到这个窗口,因为当我点击键盘上的任何其他键时,窗口就会消失。

所以我找到了按钮的句柄并使用了日志记录选项:
在此处输入图像描述

在日志记录结果中,我只看到了常规系统托盘工具栏的窗口句柄:
在此处输入图像描述

那么我怎样才能抓住隐藏窗口的句柄(我在我的问题的乞求中用绿色标记的那个,第一张图片)。

参考资料(我找到但对我没有帮助的链接):
如何使用 Microsoft Spy++ 捕获通知图标属性
获取有关 windows7 中隐藏托盘图标的信息

0 投票
1 回答
246 浏览

c# - 破解 lync 以开始录制

我参考了几个来源,发现无法使用 lync sdk 以编程方式控制屏幕录制。

因此,我采用了 spyxx.exe 方法,以便能够找出对话窗口获取的消息以开始录制(在 lync 2013 中)

如何开始 lync 录制?

先决条件:您应该为您的个人资料启用录音

立即开会 > 通话 > 共享桌面 > 选项 > 开始录制

录制步骤...

所以我开始了我的 spyxx 程序;开始见面对话;在 spyxx 中找到该窗口,并听取其消息。然后只使用键盘我尝试开始录制并随后记录了窗口接收到的窗口消息。

注意:如果你不想让spyxx.exe得到这么多的鼠标移动事件,你可以完全去掉桌面录制部分,直接打电话直接开始录制。

在研究这些消息时,我认为这两条消息应该可以解决问题......

但是,在尝试将这些消息发送到对话窗口时,它会失败。

这是负责该特定任务的代码存根:

此处提供完整代码

0 投票
0 回答
244 浏览

c# - 如何使用 Windows API 仅获取文本框控件?

我需要从其他应用程序获取控件,但只需要文本框控件。

我该怎么做?

我现在有这个代码:

问题是对于在 .NET 中创建的应用程序,TextBoxes 是使用其他类创建的,因此找不到它们。

使用 Spy++ 时,我看到文本框控件有一个名为:WindowsForms10.EDIT.app.0.141b42a_r14_ad1 的类。

这表明我不能使用类名,或者,我可以安全地在类名中查找单词 EDIT 吗?

0 投票
2 回答
2635 浏览

c++ - WinApi - 如何获取 SHELLDLL_DefView

我正在尝试获取 SHELLDLL_DefView 的句柄。

所以,我有这个代码。

Eveyrtihing 工作正常,直到我将 Windows 桌面背景更改为幻灯片。然后,当我使用窗口的 spy++ 层次结构搜索时,SHELLDLL_DefView 有另一个父级。现在是#32769(桌面)-> WorkerW -> SHELLDLL_DefView。所以我找不到它。问题是当我尝试

比 SHELLDLL_DefView 找不到。工人W 是的。

有人可以帮忙吗?

0 投票
1 回答
1007 浏览

c# - GetWindowText 只给我按钮的窗口标题,而不是标签

使用 GetWindowText 函数我正在尝试使用 C# 获取错误消息的窗口标题。我能够获得对话框中每个按钮的窗口标题,但不能获得标签的文本。使用 Spy++,我识别了对话,窗口标题字段填充了对话标签中的消息,但这个窗口句柄的 GetWindowText 给了我一个空字符串。与按钮窗口句柄相比,它给了我一个带有窗口标题的字符串。这是我使用的代码:

此代码为我提供了除标签中的所有窗口标题之外的所有窗口标题。以下是 Spy++ 的外观: 在此处输入图像描述

在此处输入图像描述

知道为什么我不能以这种方式获得标签的窗口标题吗?谢谢!

0 投票
1 回答
147 浏览

c# - 从另一个应用程序向一个 Windows 应用程序中的控件插入数据

我正在开发一个 Windows 应用程序,我想从我的应用程序向另一个 Windows 应用程序中的控件插入一些数据。我认为可以使用spy++AutoIt。

但是在搜索时,我发现只有代码,比如从一个应用程序中单击另一个应用程序中的按钮。

我需要的是,

我在WindowsApp_1中有3 个文本框,我需要从WindowsApp_2发送的值中填充这些文本框。你能给我一个示例代码来实现这个吗?

0 投票
2 回答
1204 浏览

winapi - 为什么 Spy++ 在控制台窗口中失败

我试图验证消息是否正在使用 Spy++(运行 Windows 7)发送到我的窗口,但我错误地试图监视我的程序用于调试输出的控制台窗口。Spy++ 立即通知我“无法监视指定的窗口。Windows 将不允许访问此窗口的消息流。”

虽然 Spy++ 确实正确收集了有关窗口的其他信息(例如名称、样式、类名),但它无法处理消息队列。为什么是这样?而且,出于病态的好奇,有没有办法阻止 Spy++ 使用 Windows API 访问我自己的自定义窗口的消息队列?