The Windows Driver Frameworks (WDF) are a set of libraries that make it simple to write high-quality device drivers.
Developers can use the MSDN reference documentation to learn about the core concepts of WDF and the APIs available for use. Still, there's no substitute for actual source code. That's why we've published the source behind KMDF and UMDF v2 for anyone to dig through and debug drivers with.
Unsure about what a particular WDF method is doing? Take a look at the source. Our aim is to make the inner workings of WDF as transparent for developers as possible.
Note: As you experiment with WDF, you may come across undocumented behavior or APIS. We strongly advise against taking dependencies on that behavior as it's subject to change in future releases.
Using the source in this repo, developers can perform step-through debugging into the WDF source. This makes it much easier to follow driver activity, understand interactions with the framework, and diagnose issues. Debugging can be done live by hooking onto a running driver or after a crash by analyzing the dump file. See the debugging page in the wiki for instructions.
With this initial release, we've published the source behind KMDF and UMDF v2. You'll find that a great deal of the source is shared between the two. Driving the frameworks forward with a unified model is a key priority for the WDF team.
See CONTRIBUTING.md for policies on pull requests to this repo.
See the FAQ page in the Wiki.
WDF is licensed under the MIT License.
Driver samples for Windows 10 now also live on GitHub.