Introduction - If you have any usage issues, please Google them yourself
A primary design goal for Windows Driver Foundation (WDF) was to make the driver models easy to extend to support new types of hardware. The first specialized input/output (I/O) targets in both User-Mode Driver Framework (UMDF) and Kernel-Mode Driver Framework (KMDF) are hardware-specific and support Universal Serial Bus (USB) devices. You can use the USB I/O targets to write a fully functional Windows driver for a USB device that uses the Windows USB device stack.
This paper provides information about writing UMDF and KMDF drivers for USB devices. It assumes that you are familiar with the WDF driver model.