欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

认识windows消息机制和Spy++工具

发布时间:2025/4/14 53 豆豆
生活随笔 收集整理的这篇文章主要介绍了 认识windows消息机制和Spy++工具 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

windows消息

windows消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了。
例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Windows发送一个消息给应用程序。
消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息。
这个记录类型叫做TMsg,是一个C语言结构体;


消息中有什么?

     hwnd 32位的窗口句柄。
     message用于区别其他消息的常量值,这些常量可以是Windows单元中预定义的常量。消息标识符以常量命名的方式指出消息的含义。
     当窗口过程接收到消息之后,他就会使用消息标识符来决定如何处理消息。例如、WM_PAINT告诉窗口过程窗体客户区被改变了需要重绘。
     符号常量指定系统消息属于的类别,其前缀指明了处理解释消息的窗体的类型。
     wParam 通常是一个与消息有关的常量值,也可能是窗口或控件的句柄。
     lParam 通常是一个指向内存中数据的指针。由于WParam、lParam和Pointer都是32位的,因此,它们之间可以相互转换。

消息定义

在C语言中的定义是:
typedef struct Msg
{
HWND hwnd; / /窗口句柄
UINT message; / /消息常量标识符
WPARAM wParam; // 32位消息的特定附加信息
LPARAM lParam; // 32位消息的特定附加信息
DWORD time; / /消息创建时的时间
TPoint pt; / /消息创建时的鼠标位置
} TMsg;


下面使用Spy++工具来查看Windows消息;此工具VS自带,也可下载;

打开spy++,找到记事本窗口;此工具会列出所有窗口;很多窗口在桌面并不能直接看到;

 

右击记事本窗口,选择 消息;打开此窗口的显示消息的窗口;在记事本中随便输入几个字母;可看到产生了大量的消息;由Windows发送给记事本窗口;

 

WM打头的是窗口消息;EM打头的是编辑控件消息;分分钟就产生大量消息;这是系统的内部运作;

 

 

看一下Spy++工具;它的图标是一个黑客的形象;

 

 

总结

以上是生活随笔为你收集整理的认识windows消息机制和Spy++工具的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。