阅读:6085回复:9
USB Filter driver
我修改系统的usbstor.inf文件,将一个Lower Filter Driver加入,希望在usbstor.sys为每一个USB Mass Storage Device创建的逻辑设备和USB总线之间建立一些过滤操作。插入U盘后,驱动程序中的确有Filter Driver的.sys文件,但是DriverMonitor看不到DebugPrint信息,我使用其它方式进行试验,似乎Filter Driver没有起作用。不知道是不是我的inf文件没有修改正确,或者这种方法不可行!
我也尝试了一下针对USB Class的Filter Driver,但是DrvierStudio2.7生成的FilterDriverInst.dll好像并不能够正确工作,总是提示找不到组件。如果是针对Class Driver,那么我是不是可以直接修改usb.inf文件实现加载? DS生成的针对USB Class的Filter Driver,Class类是System,并没有指定USB。我看DS提供的nmfilter这个过滤驱动也是system的,出现在很多设备中。是不是System下的FilterDriver可以监控所有Device的Internal IOCTRL? usbstor.inf添加的部分如下: [USBSTOR_CBI.NT.Services] Addservice = USBSTOR, 0x00000002, USBSTOR.AddService Addservice = usbfilt,, UsbFiltInst [USBSTOR_CBI.NT.HW] AddReg = USBSTOR.FiltAddReg [USBSTOR_CB.NT.Services] Addservice = USBSTOR, 0x00000002, USBSTOR.AddService Addservice = usbfilt,, UsbFiltInst [USBSTOR_CB.NT.HW] AddReg = USBSTOR_FiltAddReg [USBSTOR_FiltAddReg] HKR,,"LowerFilters",0x00010000,"usbfilt.sys" [USBSTOR.CopyList] USBSTOR.SYS usbfilt.sys [UsbFiltInst] DisplayName = "UsbFilt" ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 3 ; SERVICE_AUTO_START ErrorControl = 0 ; SERVICE_ERROR_IGNORE ServiceBinary = %10%\System32\Drivers\usbfilt.sys LoadOrderGroup = Extended Base |
|
最新喜欢:![]() |
沙发#
发布于:2004-07-04 16:00
USB Class的Filter就可以
FilterDriver监控什么是你驱动觉得定的,这以安为什么类无必然联系 |
|
|
板凳#
发布于:2004-07-04 23:16
没有什么特殊设定吗?似乎我的程序没有工作,所以我怀疑我得inf文件写得有问题。
|
|
地板#
发布于:2004-07-05 09:33
你插入一个usb设备看看
有没有工作看软件是不是加载了先 |
|
|
地下室#
发布于:2004-07-05 18:37
驱动详细信息里面有我加载的Filter Driver的.sys文件。
|
|
5楼#
发布于:2004-07-13 17:40
HKR,,"LowerFilters",0x00010000,"usbfilt.sys"
2000的INF不用加.sys,不知道是不是这个?? HKR,,"LowerFilters",0x00010000,"usbfilt" |
|
6楼#
发布于:2004-07-13 18:45
不用inf文件
在 HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{36FC9E60-C465-11CF-8056-444553540000} 中添加键UpperFilters,值为:“system32/driver/usbfilters.sys” 2000+好使` 需重新启动 |
|
|
7楼#
发布于:2004-07-15 11:23
如果我的过滤驱动需要针对每一个插入系统的U盘,那么这种加载怎么进行?是不是针对每一个usb Mass storage设备,这样好象比较困难!如果针对usb总线加载过滤驱动,但是不知道怎么进行?
|
|
8楼#
发布于:2004-07-17 16:52
你可以将过滤驱动加载到“通用串行总线控制器上”。也就是inf文件中的GUID={36FC9E60-C465-11CF-8056-444553540000},在硬件键下写一个过滤驱动就可以了!我试过,没问题的!
|
|
9楼#
发布于:2004-07-19 08:53
加载的过滤驱动名称不需要加.sys,而是你安装的devsvrname即安装后提示出现的驱动服务名称
|
|
|