今天遇到了一个程序,运行时自动将窗口全屏前置,而且禁用了很多组合键以及任务管理器,大概就是像网吧客户端和上电脑课时的学生机那样……
然后经过获取进程名,强制结束进程,发现是用注册表禁用任务管理器的,解了之后发现像Win键和Alt+Tab等都不能使用,搜索良久禁用Win键的方法,看到了http://social.msdn.microsoft.com/Forums/zh-CN/5e0164b3-9071-4808-b249-f06927949d21/capi-win ,用PCHunter看了下,发现原来是通过键盘钩子来实现的,如图。
然后当然要把它解决掉……撸了一会儿MSDN,很快就看到了只要知道对应的Hook句柄,用UnhookWindowsHookEx就可以秒杀,找了好久没看到怎么读取系统中所有Hook的句柄。接着看了《Windows消息钩子的拦截和清除》,说可以直接找到对应的钩子卸载掉,又撸了一会,好像需要Ring0内核态,好吧完全不会……最后看到论文那里说“最新装载的消息钩子总是插入到