滴水逆向——Win32_事件&消息&消息处理函数

本文详细介绍了Windows中的事件和消息概念,包括MSG结构体的各个字段解释,以及消息从产生到被处理的完整流程,涉及GetMessage、TranslateMessage、DispatchMessage函数的作用,最后提到了窗口过程函数WindowProc及系统消息队列的应用。
摘要由CSDN通过智能技术生成

1、事件&消息
Windows中的事件是一个“动作”,这个动作可能是用户操作应用程序产生的,也可能是Windows自己产生的.
而消息,就是用来描述这些“动作”的,比如:
这个动作是什么时候产生的?
哪个应用程序产生的?
在什么位置产生的?
等等。。。

Windows为了能够准确的描述这些信息,提供了一个结构体:MSG,该结构体里面记录的事件的详细信息.
typedef struct tagMSG {
    HWND   hwnd;
    UINT   message;
    WPARAM wParam;
    LPARAM lParam;
    DWORD  time;
    POINT  pt;
} MSG, *PMSG;

说明:
1.hwnd:
表示消息所属的窗口
一个消息一般都是与某个窗口相关联的
在Windows中 HWND类型的变量通常用来标识窗口。
2.message
在Windows中,消息是由一个数值来表示的
但是由于数值不便于记忆,所以Windows将消息对应的数值定义为WM_XXX宏(WM == Window Message)
鼠标左键按下 WM_LBUTTONDOWN                键盘按下 WM_KEYDOWN
3.wParam & lParam
32位消息的特定附加信息, 具体表示什么处决于message
4.time
消息创建时的时间
5.消息创建时的鼠标位置

 

2、消息处理流程
1.系统 / 用户触发的某个动作        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值