HOOK 钩子技术

认识钩子 HOOK

消息传递机制

  • 我们先来学习一下 Windows 消息传递机制
  • 当我们在应用程序进行相关操作时,例如:点击鼠标、按下键盘,操作窗口等,操作系统能够感知这一事件,接着把此消息放到系统消息队列,然后到应用程序的消息序列中,应用程序通过 Getmessage 函数取出消息,然后调用 DispatchMessage 函数将这条消息调度给操作系统,操作系统会调用在设计窗口类时指定的应用程序窗口对这一消息进行处理
  • 处理过程如下图所示

消息处理过程

  • 在《VC深入详解》一书中,它将钩子过程比喻为警察为了抓逃犯而设置的检查站,基本原理也确实与此类似
  • 就是在应用程序将信息传递给操作系统时(图中的 ③ ),对消息进行捕获和过滤,从而阻止消息发送到指定的窗口过程,最终完成对某些消息的屏蔽功能

钩子基础知识

  • HOOK(钩子,挂钩)是一种 Windows 平台下实现类似于中断的机制
  • HOOK 机制允许应用程序拦截并处理 Windows 消息或指定事件,当指定的消息发出后,HOOK 程序就可以在消息到达目标窗口之前将其捕获,从而得到对消息的控制权,进而可以对该消息进行处理或修改,加入我们所需的功能
  • 钩子按使用范围分,可分为 <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值