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. C语言实现金字塔

    #include <stdio.h> int main(void) { int i=0, j =0, k= 0, line; printf("请输入金字塔的总行数:") ...

  2. 一次 react-router 中遇到的小坑

    react-router Link 标签不生效的问题 废话不多说, 直接上问题, 排解过程和答案 现象: 发现 使用 Link 标签没有 元素的样式和效果, 也不能进行跳转 代码如下: render( ...

  3. 原创:C++实现的可排序的双向链表

    学习C++有一周了,今天用C++设计了一个双向链表,这个链表有排序功能,默认按升序排列,接受的参数可以是数字,也可以是字符串.现在把自己写的代码,分享出来.如果链表中接受的对象为Lexeme,可以用于 ...

  4. CF1207题解

    D 全排列减去坏序列 坏序列分三种,容斥一下就好了 E 比较有意思 \(A=_{i=1}^{100}\{i\},B=_{i=1}^{100}\{i\cdot 2^7\}\),所以\(A_i~xor~ ...

  5. input的禁止标签

    <body> <input type="text" name="" value="你好" disabled="d ...

  6. python format 时间格式

    trainData['survey_time'] = pd.to_datetime(trainData['survey_time'],format = '%Y/%m/%d %H:%M') trainD ...

  7. git 删除文件 、只删除远程仓库文件、更换远程仓库

    一.删除文件 1.克隆远程仓库到本地库. 例如使用ssh方法: git clone git@github.com:xxx/xxx.git 2.对需要删除的文件.文件夹进行如下操作: git rm te ...

  8. 后端小白的Bootstrap笔记 一

    栅格系统 下面这张图是Bootstrap对栅格系统有关系数的规定 什么是栅格体统? 栅格系统是Bootstrap提供的移动优先的网格系统, 各个分界点如上: 576px 720px 992px 120 ...

  9. C#读取Word指定页的内容

    /// <summary> /// Word按页读取内容 /// </summary> /// <param name="page">页数< ...

  10. Python 设计模式之建造者模式 Builder Pattern

    #引入建造者模式 肯德基的菜单上有 薯条, 鸡腿,鸡翅,鸡米花,可乐,橙汁,火腿汉堡,至尊虾汉堡,牛肉汉堡 , 鸡肉卷等这些单品,也有很多套餐. 比如 套餐1:鸡翅,至尊虾汉堡,可乐,薯条 套餐2:鸡 ...