Spy++ —— 窗口、消息查看分析利器

Spy++ —— 窗口、消息查看分析利器

2016年07月15日 00:25:22

阅读数:23170

1,简介

 
Microsoft Spy++是一个非常好的查看Windows操作系统的窗口、消息、进程、线程信息的工具,简单易用,功能强大。
 

2,下载地址

 
 

3,使用场景

 
(1)我经常用来查询一个不知道从哪里弹出来的广告窗口是哪个进程搞的鬼……然后干掉
(2)枚举所有窗口,查看父子关系,搜索某个窗口是否存在
(3)查询一个窗口(包括隐藏窗口)的属性,包括标题、类名、位置、进程线程
(4)通过分析其他软件的窗口消息,辅助研究其内部实现原理
(5)分析某窗口的消息参数,给其发送冒充消息,以实现特殊的功能
 

4,使用方法

 
1,默认界面 可查看所有顶层窗口,展开可显示子窗口。
2,右键窗口,选择“消息”,可打开该窗口的消息查看窗口。里面实时显示当前消息。
 
 
3,显示一个窗口位置。
右键窗口,选择“突出显示”,之后该窗口的边界会闪烁几次,让你轻易地发现它的位置。
如果没有闪烁,那么也可以通过点击“属性”,显示出该窗口的位置属性,然后在屏幕上根据该位置大致判断出是哪个窗口。
 
突出显示和查看属性:
 
 
4,如果需要分析桌面的某一个存在的窗口属性,点击工具条的第5个按钮(如下图),将弹出界面里的圆圈拖到该窗口上。则该窗口属性显示出来。
如图,查看任务栏中间的子窗口属性:
 
 
 
5,选择工具条第6个按钮,可以在窗口列表中直接定位到该窗口显示。
 
 
如图,直接定位到任务栏的子窗口“显示运行的程序”。
 
6,查看窗口的消息时,可以设置一些条件和格式。
 
可以设置是否查看父窗口、子窗口、同一进程、同一线程、系统中所有窗口的消息。
可以设置哪些消息类型。(“消息选项”界面第2个TAB页“消息”)
可以设置输出哪些内容。(“消息选项”界面第3个TAB页“输出”)
 
 

窗口、消息查看分析利器Spy++的更多相关文章

  1. spy++捕获窗口消息

    打开spy++,窗口截图如下,点击窗口搜索按钮(红框标识) ,如果找不到对应的窗口,鼠标右键刷新即可. 鼠标左键点击窗口搜索图标,按住不放,拖到需要抓取消息的窗口上: spy++会自动在列表中高亮定位 ...

  2. Windows GUI代码与Windows消息问题调试利器

    Windows GUI代码与Windows消息问题调试利器 记得很久前有这么一种说法: 人类区别于动物的标准就是工具的使用.同样在软件开发这个行业里面,对于工具的使用也是高手和入门级选手的主要区别,高 ...

  3. MFC窗口消息PostMessage和SendMessage

    以前这些消息用得比较少,但是今天碰到了个事儿,我看非用消息不可. 事情是这样的,我在线程中需要刷新对话框上面的内容,但是每每执行到UpdateData时就出现了断言错误. 查了相关资料,发现这个可能是 ...

  4. Windows窗口消息大全(转)

    Windows窗口消息大全,全不全自己看 ////////////////////////////////////////////////////////////////////////// #inc ...

  5. 深刻:截获windows的消息并分析实例(DefWindowProc),以WM_NCHITTEST举例(Windows下每一个鼠标消息都是由 WM_NCHITTEST 消息产生的,这个消息的参数包含了鼠标位置的信息)

    1,回调函数工作机制 回调函数由操作系统自动调用,回调函数的返回值当然也是返回给操作系统了. 2,截获操作系统发出的消息,截获到后,将另外一个消息返回给操作系统,已达到欺骗操作系统的目的. 下面还是以 ...

  6. Windows窗口消息大全

    ////////////////////////////////////////////////////////////////////////// #include "AFXPRIV.H& ...

  7. 如何利用wireshark对TCP消息进行分析

    原文:https://www.cnblogs.com/studyofadeerlet/p/7485298.html 如何利用wireshark对TCP消息进行分析   (1) 几个概念介绍 1 seq ...

  8. Win32窗口消息机制 x Android消息机制 x 异步执行

    如果你开发过Win32窗口程序,那么当你看到android代码到处都有的mHandler.sendEmptyMessage和 private final Handler mHandler = new ...

  9. RabbitMQ消息可靠性分析和应用

    RabbitMQ流程简介(带Exchange) RabbitMQ使用一些机制来保证可靠性,如持久化.消费确认及发布确认等. 先看以下这个图: P为生产者,X为中转站(Exchange),红色部分为消息 ...

随机推荐

  1. 1054 The Dominant Color (20)(20 分)

    Behind the scenes in the computer's memory, color is always talked about as a series of 24 bits of i ...

  2. word 插入表格,位置不在最左边

    首先想到的是 样式的问题.

  3. vs code 修改选中后匹配的代码的颜色

    打开设置文件 输入 { "workbench.colorCustomizations": { "editor.selectionBackground": &qu ...

  4. Ubuntu16.04 配置vnc4server

  5. MySql的动态语句foreach各种用法比较

    1.单参数List的类型: 上述collection的值为list,对应的Mapper是这样的 2.单参数array数组的类型: 上述collection为array,对应的Mapper代码: 3.自 ...

  6. 谷歌分析(Google Analytics) 是什么

    谷歌分析(Google Analytics) 是什么 一.总结 一句话总结: 谷歌分析,即大家俗称的ga,全称google analytics,是谷歌推出的网站流量分析工具,可以说是当前业界最强大的流 ...

  7. strace命令 二

    让我们看一台高负载服务器的 top 结果: top 技巧:运行 top 时,按「1」打开 CPU 列表,按「shift+p」以 CPU 排序. 在本例中大家很容易发现 CPU 主要是被若干个 PHP ...

  8. iPhone 照片为heic格式怎么处理?

      解决办法: 永久解决:进入 相机设置 为 兼容模式即可 这样设置以后拍出来的就是jpg格式啦. 之前的heic的照片可以用,格式工厂 批量转化一下.   文章来源:刘俊涛的博客 欢迎关注公众号.留 ...

  9. Syntax error: "(" unexpected shell里面的报错解决

    author:headsen  chen date : 2019-08-08  11:11:38 notice : 个人原创 Ubuntu上运行shell脚本总是报下面这个错误,在centos下面或者 ...

  10. 反射load,loadfile,LoadFrom区别

    反射加载数据用法 Load Assembly assembly = Assembly.Load("Ruanmou.DB.MySql");//dll名称无后缀 从当前目录加载dll ...