Naughter Software Logo

WinUSBWrappers v1.06 A C++ class to provide a complete C++ encapsulation of WinUSB

The class provided is WinUSB::CDevice which provides a simple RAII wrapper for programming to the WinUSB API for USB devices on Windows.

 

Features

 

The enclosed zip file contains the WinUSBWrappers source code and a VC 2017 console based application which exercises all of the class API methods. If the sample app detects that you have an OSR FX2 Learning Kit device attached to your computer then it will exercise all of the functionality of this board via the WinUSBWrappers API methods. Even if you do not have one of these devices attached the sample app will demonstrate enumeration of USB devices using the WinUSB::CDevice::EnumerateDevices methods before it exits prematurely. For more information about this device, please see www.osronline.com/hardware/osrfx2_32.pdf and https://www.amazon.com/OSR-USB-FX2-Learning-Kit/dp/B07FNSYCLR to purchase one of these devices. Most of the Microsoft documentation related to WinUSB assumes you have one of these devices when learning WinUSB programming. Another resource worth reading is https://www.osronline.com/article.cfm?article=532 which provides a MFC wrapper class for WinUSB upon which WinUSBWrappers takes some inspiration. For examples of all the WinUSBWrappers API methods please see the source code of the demo application in the WinUSBWrappersDemo.cpp module in the download. To install the FX2 device using a specific device interface GUID you might want to take a look at http://zadig.akeo.ie/ which allows a specific driver such as WinUSB to be associated with a specific USB device as well as automating creation of signed inf driver installation files.

 

Copyright

 

Updates

v1.06 (13 March 2022)

v1.05 (9 March 2019)

v1.04 (21 April 2019)

v1.03 (28 September 2018)

v1.02 (30 October 2017)

v1.01 (18 December 2015)

v1.0 (27 November 2015)