MFC -- 实现键盘HOOK
2023-03-14 22:59:35 时间
一、新建一个MFC应用程序
二、选择资源视图,打开界面设置(IDD_KEYBOARDHOOK_DIALOG)
三、删除原有的控件,从工具箱添加一个按钮
四、修改按钮的标题属性,双击进入开始编写代码
五、代码编写
1、编写HOOK按钮事件,点击按钮创建一个hook,返回句柄
//1、创建一个hook hk = SetWindowsHookEx(WH_KEYBOARD, //hook类型,键盘hook KeyboardProc, //回调函数 NULL, //第三方的注入dll,全局hook使用 GetCurrentThreadId());//线程id,填0表示hook所有程序 if (hk == NULL)//如果创建失败,弹出信息框 { AfxMessageBox(L"HOOK失败"); return; }
2、回调函数
HHOOK hk; //键盘hook的回调函数 LRESULT CALLBACK KeyboardProc(int code, WPARAM wParam, LPARAM lParam) { OutputDebugStringW(L"键盘被hook!!!"); //钩子执行完后执行该函数 return CallNextHookEx(hk, code, wParam, lParam); }
六、运行结果
禁止非法,后果自负
相关文章
- 在Linux中用chattr和lsattr命令管理文件和目录属性
- Java8简明指南
- 在linux中创建和解压文档的11个 tar 命令例子
- Docker 容器互联方法
- Shell脚本编程初体验
- 如何在 Linux 上用 IP转发使内部网络连接到互联网
- Neofetch :带发行版 Logo 图像的系统信息显示工具
- Apache Storm 官方文档中文版
- Apache Storm 官方文档 —— 内部技术实现
- 使用Docker做开发的建议团队工作流
- 细说 CA 和证书
- 创建尽可能小的 Docker 容器
- Apache Storm 官方文档 —— 源码组织结构
- Linux有问必答:如何更新过期版本的Ubuntu
- 《ELK Stack权威指南(第2版)》一 1.2 Hello World
- Livepatch —— 免重启给 Ubuntu Linux 内核打关键性安全补丁
- 重走LFS之路:(一) 环境准备
- 基础的 Docker 容器网络命令
- ThreadLocal使用
- 《ELK Stack权威指南(第2版)》一1.3 配置语法