Windows Hook机制中的Hook链
Windows Hook链
本文是Windows hook系列的一文。
上一文:《手把手教你用SetWindowsHookEx做一个键盘记录器》.
是本文hook的实例!
引入
hook是Windows操作系统消息处理机制的一个平台,应用程序可以通过设置Hook对某个进程或窗口进行监视,即对特定事件“挂钩”;
一旦预定义特定事件发生,Windows操作系统即会向钩子hook发送通知消息,这时,应用程序可进行响应。
HOOK的处理主要有以下三个阶段:
阶段1:定义Hook;
阶段2:在Hook链表中传递Hook;
阶段3:卸载Hook。
今天主要学习第二阶段的 HOOK链
HOOK链
我一直以来的方法论,就是学习一个东西,要搞清楚五件事情:
1.它是什么?
2.它的作用是什么?
3.它怎么使用?
Hook链是什么?
每一个Hook都有一个与之相关联的指针列表,称之为钩子链表,由系统来维护。
这个列表的指针指向指定的,应用程序定义的。
Hook链的作用
被Hook子程调用的回调函数,也就是该钩子的各个