c语言监视本进程的键盘钩子
源码:
#include "stdio.h" #include <Windows.h> #include "conio.h" LRESULT CALLBACK KeyboardProc(int code,WPARAM wParam,LPARAM lParam)//钩子过程 { printf("1"); //如果钩子过程被调用,就输出1 return (long)1; } int main() { HHOOK h_Keyboard=SetWindowsHookEx(WH_KEYBOARD,KeyboardProc,NULL,GetCurrentThreadId());//安装钩子 MessageBoxA(0,"你的机器将于5分钟后重启。","提示",MB_OK); //弹出窗口,点击窗口才会触发事件,点击命令行没有用 _getch(); return 0; }
结果:
点击提示框,然后按键盘,就输出1