我编写了一个全局钩子程序(keyHOOK),用了捕获键盘输入,保存到一个文本。
另外我些了一个程序(hbHOOK,带一个输入框)想屏蔽调我自己写的全局钩子,原理是后面加入的钩子优先。
我就在hbHOOK里面加入一个线程钩子,不调用CallNextHookEx()传递。
但是验证的时候,先运行keyHOOK,再运行hbHOOK,在hbHOOK的输入框输入数据,还是被keyHOOK截获了,不知道为什么?
麻烦各位大侠看看hbHOOK实现
1。在BOOL CBkHookApp::InitInstance()中加入
   hkb=SetWindowsHookEx(WH_KEYBOARD_LL,(HOOKPROC)KeyboardProc,hins,GetCurrentThreadId());
2。在CALLBACK KeyboardProc()中不调用CallNextHookEx()
   //LRESULT Result=CallNextHookEx(hkb,nCode,wParam,lParam);// 去掉后面的钩子我把SetWindowsHookEx函数中 hins 换成 NULL, GetCurrentThreadId() 换成 0 都不能屏蔽全局钩子