static HHOOK hook = NULL; //定义的全局钩子变量
//监控键盘回调函数
LRESULT CALLBACK hookproc(UINT nCode, WPARAM wParam, LPARAM lParam)
{
if ((nCode == HC_ACTION && GetAsyncKeyState(13) & 0x8000))
{
//按下键盘回车键
//code your code
}
return CallNextHookEx(hook, nCode, wParam, lParam);
}
void myCreateThread() {
if (!hook) {
// 启动Hook
DWORD id = GetCurrentThreadId();
hook = SetWindowsHookEx(WH_KEYBOARD, (HOOKPROC)hookproc, NULL, id);
}
}
void myCloseThread() {
if (hook != NULL) {
UnhookWindowsHookEx(hook); // 卸载Hook
hook = NULL;
}
}