libwdi | Windows Driver Installer library for USB devices
kandi X-RAY | libwdi Summary
kandi X-RAY | libwdi Summary
Windows Driver Installer library for USB devices
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of libwdi
libwdi Key Features
libwdi Examples and Code Snippets
Community Discussions
Trending Discussions on libwdi
QUESTION
Overview...
I have read How to get device interface GUID for a device? and How to open a handle to a device using its Device Instance ID?, but I'm still confused about how I am to (or whether I should even) use SetupDiEnumDeviceInterfaces paired with SetupDiGetDeviceInterfaceDetail to get a DevicePath that can be opened with CreateFile to access the device when no device interface class GUID is known. My question is based on the MSDN article here and here which rely on these functions.
More details...
The high level of my problem is I've got an audio USB device I need to send control transfer commands. To do so, I want to use WinUSB's API, and to do that I need to get a handle to the device via CreateFile. Unfortunately, there is no .inf file associated with the device and so there is no known device interface class GUID. If one plugs the device in, Windows associates with it usbaudio.sys as the driver. To start talking over WinUSB, I use libwdi to install WinUSB as the device driver so that I can communicate with it via the WinUSB API. To accomplish the install of WinUSB, libwdi dynamically creates a self-signed .cat and .inf file pair, which unfortunately has no device interface class defined. In fact, the INF file has the following in it:
...ANSWER
Answered 2021-May-14 at 00:32Yes, first you need to get a device information set for devices that implement the interface via SetupDiGetClassDevs
, then pick one of the devices and read its device interface data, and use that to get the device interface detail that contains the device path.
Example:
QUESTION
I'm developing a USB Device containing a couple of USB Functions (CDC-ACM and DFU as of now), using windows provided drivers.
The device descriptor indicates the device uses IAD (Interface Association Descriptor) and the configuration descriptor reflects that, containing all the descriptors for the CDC function as well as the DFU Function. This configuration works right out of the box on non-windows platforms, with both drivers correctly assigned.
Due to WCID (Windows Compatible ID) requirements, I have setup the following descriptor indicating that windows should load WINUSB for the DFU Interface.
...ANSWER
Answered 2020-Sep-08 at 03:02You don't need to use Zadig to see what drivers Windows is using. The list of SYS files is shown in the Device Manager when you double-click on your device and go to the "Driver" tab.
At some point, possibly through software like Zadig, you might have loaded an INF file on your computer that tells it to use libusb0 with your device. You can inspect your device in the Device Manager and look at the "Inf Name" field to find out what INF file is responsible for this, if that is the case.
I recommend that you right-click on your device and select "Uninstall Device..." to remove your device's association with libusb0. You should also click the "Uninstall driver software" checkbox as you are doing this to remove the unwanted INF file (if it exists).
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install libwdi
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page