Professional Documents
Culture Documents
Windows USB Client
Windows USB Client
MVStudio 2019 - framework - After building and installing the client driver, this would be
found in Device Manager.
This is based on the component object model (COM). A UMDF-based client driver is
implemented as an in-process COM server (DLL), and C++ is the preferred language for
writing a client driver for a USB device.
Whenever Windows notifies the framework about certain events, the framework invokes the
client driver’s callback, if one is available. Otherwise, the framework proceeds with the
default processing of the event. The template code defines driver, device, and queue
callback classes.
Prerequisites
Computer with Windows.
Software requirements
Visual Studio 2019
Windows Driver Kit for Windows 10 (headers, libraries, tools, documentation
Debugging tools for windows
Hardware requirements
Get a USB device for which you will be writing the client driver. Supported vendors
command.
Start kit: OSR Online - OSR USB FX2 learning kit to study USB samples
Steps:
New Project -> User Mode Driver, USB (UMDF V2)
INF file to add information about your device, specifically the hardware ID string.
Reflector - the top-most driver in the kernel-mode stack. The reflector as a service
and WinUSB as a lower-filter driver in the INF.
WinUSB - The installation package must contain the installer for Winusb.sys.
https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/implement-driver
-entry-for-a-usb-driver--umdf-
https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/understanding-th
e-umdf-template-code-for-usb
https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/building-usb-dev
ices-for-windows