Usb Drivers Development Kit for Windows
Find a file
Yuri Benditovich c736f5d8be driver: fix driver verifier assertion in FileCreate callback
Previous commit 4de57a9ff causes driver verifier assertion with
latest Windows builds. Note that this assertion is not in latest
WDF sources on GitHub. The verifier does not allow to forward
the MJ_CREATE requestto local IO target using "send-and-forget".
It requires the request to set completion callback.
There is an option to remove the file create callback at all, but
we prefer to have printout on file open for better diagnostics.
So we add completion callback for forwarded request and complete
the request in it.

Signed-off-by: Yuri Benditovich <yuri.benditovich@daynix.com>
2020-01-27 19:49:45 +02:00
Documentation Add documention for extended Hider feature 2019-04-15 11:19:13 +03:00
Tools build: adjust appveyor script 2020-01-26 13:01:08 +02:00
UsbDk driver: fix driver verifier assertion in FileCreate callback 2020-01-27 19:49:45 +02:00
UsbDk Package Update project files for build with higher WDK installed 2019-01-27 11:57:49 +02:00
UsbDkController Hider API: add ability to delete all persistent rules 2019-04-15 11:19:13 +03:00
UsbDkHelper Hider API: add ability to delete all persistent rules 2019-04-15 11:19:13 +03:00
UsbDkInstHelper InstallHelper: optionally suppress message boxes 2019-04-15 11:02:48 +03:00
.appveyor.yml build: adjust appveyor script 2020-01-26 13:01:08 +02:00
.editorconfig UsbDk: Introduce .editorconfig file 2014-06-22 09:31:22 +03:00
.gitignore Build: Introduce debug configurations without test signing 2017-04-06 13:24:06 +03:00
ARCHITECTURE ARCHITECTURE: Extend hider API description 2015-02-26 15:49:46 +02:00
buildAll.bat build: fix build of TMF files 2020-01-02 21:47:41 +02:00
LICENSE UsbDk: Add license-related files and headers 2014-05-20 11:56:20 +03:00
MAINTAINERS Updated MAINTAINERS file 2019-01-27 11:57:49 +02:00
README.md ci: Integrate with AppVeyor 2017-06-07 12:58:53 +03:00
UsbDk.sln Build: Introduce debug configurations without test signing 2017-04-06 13:24:06 +03:00

Build Status

UsbDk

UsbDk (USB Development Kit) is a open-source library for Windows meant to provide user mode applications with direct and exclusive access to USB devices by detaching those from Windows PNP manager and device drivers and providing user mode with API for USB-specific operations on the device.

The library is intended to be as generic as possible, support all types of USB devices, bulk and isochronous transfers, composite devices etc.

Library supports all Windows OS versions starting from Windows XP/2003.

Documentation

  • See ARCHITECTURE document in the source tree root.
  • See Documentation folder in the source tree root.
  • See UsbDkHelper\UsbDkHelper.h UsbDkHelper\UsbDkHelperHider.h for API documentation

Building

Tools required:

  • Visual Studio 2015/Visual Studio 2015 Express update 3 or newer
  • WDK 10
  • Windows 10 SDK
  • Wix Toolset V3.8 (for building MSI installer)
  • WDK 7.1 (for Windows XP/2003/Vista/2008 builds)

Compilation

Just open UsbDk.sln from the source tree root in Visual Studio 2015 and compile desired configuration.

Installing and running

Use UsbDkController.exe to install/uninstall and verify basic operation. Run UsbDkController.exe without parameters for command line options.

Known issues

  • Installation on 64-bit versions of Windows 7 fails if security update 3033929 is not installed. Reason: UsbDk driver is signed by SHA-256 certificate. Without this update Windows 7 does not recognize the signature properly and fails to load the driver.