两个线程实在是太麻烦,我决定从驱动着手。研究了几天了,发现NTDDK\src\input\kbfiltr根本不能调试,不知道是哪里错了?我可什么都没有改,原样的编译出来,居然用DriverStudio的监控工具会出现:ERROR (1058): The driver is marked as disabled (Start=4) in its service database entry.不知道是什么问题,各位帮帮忙啊?我用的是PS/2鼠标。
to tabris17(四不象)
我仔细试验了一下,winlogon是属于winlogon桌面的,而其它应用程序是属于Default桌面的,所以登录后钩不到键盘事件。用此方法会在winlogon和default之间不断切换,而且不好掌握,所以是在是比较麻烦啊!切换不知道参考什么事件啊?决定还是用驱动吧!不过还是谢谢你!
to AthlonxpX86(桃源村)
这几篇文章都看不太明白,主要是我从来没有写过驱动。有没有跟简单,比较容易上手的教程和文章?
to tabris17
用把DLL注入winlogon的方法,winlogon的键盘事件是能监控到,三键和密码都能监控到,但是登录后的键盘事件倒是监控不到了,不知道这是为什么?我是这样使用的:在Startup调用的函数中先设置一个键盘钩子,然后在后面加一个消息循环,不让该函数结束.Asynchronous是设置为1的,让winlogon以单独线程方式运行该函数.
但是为什么登录完成后反而什么也监控不到了,钩子失效了吗?还是该线程被Winlogon强制结束了?