阅读:1841回复:4
keyboard filter driver in 2k/nt
Hi everyone:
i use a keyboard filter driver to intercept some specifical keyboard strike , everything seems well except that when i repeatly press the key been intercepted and without touching any other keys, the screen saver will activate. i intercept the key strike in the filter driver\'s IsrHook( called by keyboard controller\'s isr), and if the specifical key is pressed ,i queue a DPc ,where i call PoSetSystemState, but it doesnt work? Could anyone here help me????? |
|
最新喜欢:harton... |
沙发#
发布于:2002-08-21 19:20
Hiiiii any one here have some clues?????? i really need ur help.
|
|
板凳#
发布于:2002-08-21 20:58
1、试图从键盘驱动的isr模拟特定按键似乎不妥,特别是用usb、1394之类键盘的时候,这时你的一个dpc就可以让该总线的驱动停下来。换个中断级低一点的试试。
2、激活屏保说明你调用PoSetSystemState的时候要么参数不对,要么系统环境不对(主要是中断级的问题) |
|
地板#
发布于:2002-08-23 18:24
谢谢FT.S
我没有在iSR中调用PoSetSystemState,而是在iSR中QUEUE一个dpc,在dpc中调用PoSetSystemState的.我看kbdclass中也是在ServiceCallBack中调用PoSetSystemState的.(而ServiceCallBack是在i8042的dpc中被调用的).不知还有什么其他的方法. 另外我用的参数是ES_USER_PRESENT,也是参考KbdClass的. 请指教,谢了,很急.一定给分 |
|
地下室#
发布于:2002-08-25 14:27
还有谁有什么建义???
|
|