说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

/*** 请教WH_SHELL钩子WIN2000下为何无法捕捉到用户打开了一个控制台程序 ***/

编辑:说三道四文库 发布时间:2018-07-16 03:42
HTML文档下载 WORD文档下载 PDF文档下载
我在WIN98下创建一个WH_SHELL钩子,在钩子函数中当nCode==HSHELL_WINDOWCREATED时,可以捕捉到用户打开的任何程序,包括控制台程序。当我在WIN2000下测试时,却无法捕捉用户打开了一个控制台程序的动作,请问有什么办法可以知道用户打开了一个控制台程序,并能取得该控制台的窗口句柄?
这个我印象中好像是可以通过挂接VXD服务拦截到的。因为DOS窗口实际上就是一个V86模式。
能否给出详细资料?万分感谢!
换一个钩子就可以了,或者WH_CALLWNDPROC,或者WH_GETMSG,只要控制台程序启动,产生窗口,消息钩子就可以截获到

2000下的命令行窗口由csrss.exe进程创建,那是一个系统进程,无法加载你的钩子
关注。
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘