求教:关于hook键盘消息的一点儿疑惑。
我的USB键盘上有一个启动IE的键,我想屏蔽这个键启动IE的功能,换成我自己定义的功能(打开另一个应用程序),请问我可以用WH_KEYBOARD或WH_KEYBOARD_LL作为调用SetWindowsHookEx()的第一个参数吗?按键后,这个键的消息是否还会起作用呢?
我在Win Me下,截到了这个键的消息,并替换成了自己的消息,可是我的应用程序和IE都被打开了,这是为什么呢?
问题点数:100、回复次数:7Top
1 楼suntt(两条腿的狗)回复于 2003-06-04 06:55:03 得分 5
upTop
2 楼hyamw(林锋)回复于 2003-06-05 11:52:08 得分 20
你在你自己的钩子处理函数中有没有用CallNextHookEx?
如果有,就去掉这一句。Top
3 楼gbelly(吉百利)回复于 2003-06-07 21:46:50 得分 0
当我截获了想要的消息后,没有调用CallNextHookEx(),而且我的程序在98和2k下是能正常工作的,只是在WinMe下不能正常工作。WinMe和98、2k相比有什么特殊的地方要主意呢?Top
4 楼bitisfox(终于挣脱老板的樊笼,翻身农奴把歌唱……)回复于 2003-06-07 23:02:11 得分 20
估计是IE在Hook链上比较优先。Top
5 楼feeboby(rockの终点)回复于 2003-06-08 00:33:09 得分 20
是不是ie直接读的是系统缓存Top
6 楼hyamw(林锋)回复于 2003-06-08 16:28:29 得分 35
你有没有跟踪程序啊?
跟踪到出错的地方看看,是哪个模块出问题了
用VC写钩子的时候在winme,98,2k下应该是没什么区别的,你有没有在钩子汉书中用MFC类?
有的话可能会有问题Top
7 楼gbelly(吉百利)回复于 2003-06-10 11:29:37 得分 0
我没用mfc类。我跟踪到了截获消息的模块,确实截获了消息,并且没有调用CallNextHookEx(),但IE还是自己启动了,我非常不明白。多谢各位的帮助,先结贴散分,这个问题我再慢慢解决吧。Top



