| 查看: 684 | 回复: 6 | |||
| 当前主题已经存档。 | |||
[交流]
【原创】关于Low Level Keyboard Hook,万恶的SDK啊~~
|
|||
|
今天要做点事情,需要屏蔽Win键,于是想到用WH_KEYBOARD_LL,随便看了下VS6.0自带的MSDN里LowLevelKeyboardProc的描述: The LowLevelKeyboardProc hook procedure is an application-defined or library-defined callback function used with the SetWindowsHookEx function. The system calls this function every time a new keyboard input event is about to be posted into a thread input queue. The keyboard input can come from the local keyboard driver or from calls to thekeybd_event function. If the input comes from a call to keybd_event, the input was "injected". 于是写了类似下面的代码: void f() { HHOOK hHook = NULL; HANDLE hThread = NULL; __try { hHOOK = SetWindowHookExhInstance,WH_KEYBOARD_LL,LowLevelKeyboardProc,0); if(NULL == hHook) __leave; hThread=(HANDLE) _beginthread(.......); if ((HANDLE)1 == hThread) __leave; WaitForSingleObject(hThread); } __finally { if (NULL != hThread) CloseHandle(hThread); if (NULL != hHook) UnhookWindowsHookEx(hHook); } } 结果发现,安装的HOOK不起作用,研究了很久也不明白怎么回事,正在郁闷中,突然看到Win2K3的SDK Documentation里对LowLevelKeyboardProc的描述是: The LowLevelKeyboardProc hook procedure is an application-defined or library-defined callback function used with the SetWindowsHookEx function. The system calls this function every time a new keyboard input event is about to be posted into a thread input queue. The keyboard input can come from the local keyboard driver or from calls to the keybd_event function. If the input comes from a call to keybd_event, the input was "injected". However, the WH_KEYBOARD_LL hook is not injected into another process. Instead, the context switches back to the process that installed the hook and it is called in its original context. Then the context switches back to the application that generated the event. 天啊,平白无故的多出来一段,真是万恶的SDK啊~~! |
» 猜你喜欢
今年审到国自然15份,谈谈感受
已经有15人回复
国自然上会要求
已经有5人回复
面上本子正文33页,违规吗?会被低分嘛?
已经有7人回复
上海大学实验技术岗位非升即走
已经有8人回复
考博自荐
已经有6人回复
青C资助名额大幅增加!
已经有16人回复
重磅!青年科学基金项目(C类)资助增幅预计超过50%
已经有10人回复
我在等一个没有答案的答案
已经有3人回复
半夜喝咖啡
已经有5人回复
售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急
已经有4人回复


2楼2009-09-10 18:54:17

3楼2009-09-10 19:48:13

4楼2009-09-10 21:36:48

5楼2009-09-11 00:04:32

6楼2009-09-11 08:24:23

7楼2009-09-11 14:18:03












回复此楼
30