USB设备WDF驱动可以使用UMDF和KMDF。他都提供的专门的USB I/O目标来支持USB驱动程序的实现。WDF定义三种对象类型来使用USB I/O目标:
l USB目标设备对象代表一个USB设备,并提供方法来检索设备的相关信息,并发送控制请求给设备;
l USB接口对象代表一个单独的接口,并支持驱动程序选择可选设置和获取设置的相关信息的方法;
l USB目标管道对象代表一个单独的管道,即接口中正在使用的可选设置里所配置的端点。
USB所支持的接口和方法如下表所示:
USB抽象 |
UMDF接口 |
KMDF对象类型和方法 |
USB设备 |
IWDFUsbTargetDevice |
WDFUSBDEVICE WdfUsbTargetDeviceXxx |
接口 |
IWDFUsbInterface |
WDFUSBINTERFACE WdfUsbInterfaceXxx |
管道 |
IWDFUsbTargetPipe</ |