阅读:1308回复:4
关于一键拔除U盘(新手,请帮个忙)
我想做一个小程序,实现这样的功能,插入了U盘以后,只要按一个预先设定好的键,就可以代替以前的点击好几下鼠标的操作,使得U盘可以被安全拔除。
有朋友说是让我先从应用层考虑,谁知道这方面的API麻烦告知? 另外,我还是想从驱动层面来考虑,可以学习学习,要不到这个网站干什么?呵呵:).哪位大侠能告诉我大概的思路呢??? 主要有以下问题: 1、我这个filter是应该放在U盘驱动之上还是文件系统驱动之上?具体来说在win2000下是哪个文件? 2、我如何知道下层驱动处理了哪些IRP?(否则怎么知道在fileter中要处理哪些) 3、在驱动程序中如何截获键盘击键?(能否象以前的VxD,钩连到键盘中断,在ISR中取得键值?) 我自己是这么认为的:1、filter应该放在文件系统驱动之上,然后每次截获的击键符合条件的话就自己构造一个IRP(IRP_MJ_SYSTEM_CONTROL\IRP_MN_DISMOUNT)往文件系统CDO发送;2、不知道下面处理了什么就算了,反正对每个IRP都调用同样的处理函数直接往下转发。 请各位高手留步,帮个忙! |
|
沙发#
发布于:2005-01-12 13:21
谢谢你们的回答
to aasa2: 的确是我自己想象的,我就是不知道在WDM中能否截获键盘中断才问的:)另外,我想问清楚,文件驱动真的不可以截获中断吗? 我以前做过VXD,截获中断很简单,就钩连一下,写个ISR就可以了,所以我才想象着在这里是不是一样。 to zhangshengyu: 能不能麻烦你说具体一点?谢谢! |
|
驱动老牛
![]() |
板凳#
发布于:2005-01-12 09:30
利用SFILTER可以得到这个
|
|
地板#
发布于:2005-01-12 08:20
3、在驱动程序中如何截获键盘击键?(能否象以前的VxD,钩连到键盘中断,在ISR中取得键值?) 为何我感觉这个是你自己想象出来的! 文件驱动应该捕获不到键盘事件,usb驱动也不行吧! [编辑 - 1/12/05 by aasa2] |
|
|
地下室#
发布于:2005-01-11 23:17
自己顶一下。
|
|