WEB开发网
开发学院软件开发VC 如何构造一个简单的USB过滤驱动程序 阅读

如何构造一个简单的USB过滤驱动程序

 2006-07-19 11:37:11 来源:WEB开发网   
核心提示: 三、使用INF安装驱动在完成了驱动以后,还必须把它安装到系统里面,如何构造一个简单的USB过滤驱动程序(7),驱动程序才会起作用,一般来说,是找一些类似设备的inf文件或范例来修改,在不侵权的前提下,我们都必须为我们的驱动程序提供一个inf文件,以便于用户安装或者维护

三、使用INF安装驱动

在完成了驱动以后,还必须把它安装到系统里面,驱动程序才会起作用。一般来说,我们都必须为我们的驱动程序提供一个inf文件,以便于用户安装或者维护。对于新手来说,过滤驱动程序的inf或许有些棘手。所以,针对本文所描述的驱动,我们提供一个Win98下的安装范例usbkey.inf,范例中“;”后的文字是注解,以方便读者理解。

; usbkey.INF 
;
; Installs Lower Level Filter for a HID keyboard device
;
; (c) Copyright 2001 SINO Co., Ltd.
;   
[Version]
;”CHICAGO”表示Win9x平台
Signature="$CHICAGO$"
;键盘所属类名
Class=HID
ClassGUID={745a17a0-74d3-11d0-b6fe-00a0c90f57da}
;驱动程序提供者,此信息会显示在设备属性的“常规”页
Provider=%USBDBE%
LayoutFile=layout.inf
;显示在驱动程序文件详细资料窗口
DriverVer=11/12/2001,4.10.2222.12
;[ControlFlags]
;ExcludeFromSelect = *
;驱动程序安装目录,inf会将我们的驱动程序安装到如下目录
;记得Destinationdir后面一定要带一个“s”
[DestinationDirs]
DefaultDestDir = 10,system32\drivers
;要增加的注册表项
[ClassInstall]
Addreg=HIDClassReg
[HIDClassReg]
HKR,,,,%HID.ClassName%
HKR,,Icon,,-20
;制造商
[Manufacturer]
%USBDBE%=USBDBE
[USBDBE]
;我们所要附加过滤驱动程序的设备ID。这个ID可以从IC的规范上得来,也可以
;用hidview.exe读出,或者从注册表HKLM\Enum\hid和usb项找出
%HID.DeviceDesc%  = Keypad_Inst, USB\VID_05AF&PID_0805&MI_00
;要安装的文件和需要修改的注册表项
;Install usbkey driver
[Keypad_Inst]
CopyFiles=Keypad_Inst.CopyFiles
AddReg=Keypad_Inst.AddReg
[Keypad_Inst.CopyFiles]
hidusb.sys
hidparse.sys
hidclass.sys
usbfilt.sys
[Keypad_Inst.AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,"hidusb.sys"
[Keypad_Inst.HW]
AddReg=Keypad_Inst.AddReg.HW
;Lowerfilters表示是低层过滤驱动,如果是上层过滤驱动,则必须改为upperfilters
[Keypad_Inst.AddReg.HW]
HKR,,"LowerFilters",0x00010000,"usbfilt.sys"
;HID设备所需要安装的文件和注册表中需要修改的地方
;Install USBHIDDevice
[USBHIDDevice]
CopyFiles=USBHIDDevice.Copy
AddReg=USBHIDDevice.AddReg
[USBHIDDevice.Copy]
hidclass.sys
hidusb.sys
hidparse.sys
[USBHIDDevice.AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,"hidusb.sys"
;以下定义需要在上面某些地方使用时替换的字符串
[strings]
USBDBE       = "SINO Co., Ltd."
HID.DeviceDesc    = "SINO USB MultiKeyboard"
HID.HIDDeviceDesc  = "Human Interface Devices"
HID.DefaultDevice  = "HID Default Device"
HID.ClassName    = "Human Input Devices (HID)"
HID.SvcDesc     = "Microsoft HID Class Driver"

其实最简单的写inf的方式,是找一些类似设备的inf文件或范例来修改。在不侵权的前提下,充分利用现有资源是我们的一贯原则。

上一页  2 3 4 5 6 7 

Tags:如何 构造 一个

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接