SpartacusIn21

专注:c++,python,d3d,设计模式,人工智能,并行计算

spy++捕获窗口消息

 打开spy++,窗口截图如下,点击窗口搜索按钮(红框标识) ,如果找不到对应的窗口,鼠标右键刷新即可。

  鼠标左键点击窗口搜索图标,按住不放,拖到需要抓取消息的窗口上:

 spy++会自动在列表中高亮定位抓取到的窗口,如下图所示,notepad++的new1窗口被抓取到了。再点击菜单栏 监视->日志消息:

 

 在弹窗的消息选项弹窗中,可以选择需要打印的日志的消息,可以通过消息组选择一类消息,也可以在左侧“要查看的消息”中,通过鼠标左键点击选择和取消选择,也可以通过连续按键盘字母键查找对应的消息。

 这样,在操作对应的程序的时候,就能在spy++中看到窗口收到的消息和对应的日志了。

 

 spy++抓取窗口日志,可以免去了调试过程中断点导致的窗口消息中断,便于定位消息和相应的值。

 比如,之前我想让edit编辑框支持ctrl+a快捷键,在调试设置断点的时候发现只有消息WM_KEYDOWN,苦思不得其解,然后通过spy++抓取消息后,会发现其实会进入两次WM_KEYDOWN消息循环,第一次是Ctrl按下的时候,wParam是VK_CONTROL值,第二次是a按下的时候,wParam值是'a'或'A'。spy++便于让我们逆向去理解windows的消息机制。

posted on 2017-07-31 12:36  SpartacusIn21  阅读(7082)  评论(1编辑  收藏  举报

导航