// HookapiTest.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <Windows.h> #include <iostream> using namespace std; HHOOK keyboardHook = 0; LRESULT CALLBACK HookCallback(int code, WPARAM wParam, LPARAM lParam) { KBDLLHOOKSTRUCT *ks = (KBDLLHOOKSTRUCT*)lParam; if(ks->vkCode == 'A') { cout << "A键拦截了!" << endl; return 1; } return CallNextHookEx(0, code, wParam, lParam); } int main() { keyboardHook = SetWindowsHookExA(WH_KEYBOARD_LL, HookCallback, GetModuleHandleA(0), 0); if (keyboardHook == 0) { cout << "键盘钩子挂失败了!" << endl; return -1; } cout << "钩子挂好了!" << endl; MSG msg; while(1) { if (PeekMessageA(&msg, 0, 0, 0, PM_REMOVE)) { TranslateMessage(&msg); DispatchMessageW(&msg); } else Sleep(0); //避免CPU全负载运行 } UnhookWindowsHookEx(keyboardHook); cout << "正常结束!" << endl; return 0; }
windows 键盘全局钩子
免责声明:文章转载自《windows 键盘全局钩子》仅用于学习参考。如对内容有疑问,请及时联系本站处理。
上篇Java中将字符串用空格分割成字符串数组的split方法EasyTouch5插件使用 EasyTouch手势检测功能下篇
宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=