Download the Windows Driver Kit (WDK)

The WDK is used to develop, test, and deploy drivers for Windows. The most recent public release is WDK 10.0.26100.1591 (released September 17, 2024).

  • You can install and run this WDK on Windows 7 and later.

  • You can use this kit to build drivers for Windows 10, Windows Server 2016 and later client and server versions.

To target Windows 8.1, Windows 8, and Windows 7, install an older WDK and an older version of Visual Studio either on the same machine or on a separate machine. For links to older kits, see Other WDK downloads.

Join the Windows Insider Program to get WDK Insider Preview builds. For installation instructions for the Windows Insider Preview builds, see Installing preview versions of the Windows Driver Kit (WDK).

WDK NuGet package support

WDK is available as a NuGet package starting from version 10.0.26100.1. Users can access and use these packages directly from nuget.org within Visual Studio. WDK NuGet package provides a convenient way to acquire and update the WDK, it also manages dependencies such as the SDK, helping to keep the driver development toolchain current. For more information, see Install the latest WDK using NuGet.

ARM64 support

Starting with WDK version 10.0.26100.1, the WDK now supports the development, testing, and deployment of drivers on ARM64 machines. The WDK/EWDK can be installed and run natively on ARM64 hardware. Additionally, the previously supported emulation of x86 KMDF/UMDF2 drivers on ARM64 hardware is still available. Also, debugging and deploying drivers to an ARM64 target machine is now supported from both ARM64 and x64 host machines. When installing the WDK/EWDK on ARM64 machines, the process will automatically identify and install all necessary dependencies, including build tools, binaries, and libraries.

download icon for Visual Studio Step 1: Install Visual Studio 2022

The WDK requires Visual Studio. For more information about system requirements for Visual Studio, see Visual Studio 2022 System Requirements.

The following editions of Visual Studio 2022 support driver development for this release:

When you install Visual Studio 2022, select the Desktop development with C++ workload, then under Individual Components add:

  • MSVC v143 - VS 2022 C++ ARM64/ARM64EC Spectre-mitigated libs (Latest)

  • MSVC v143 - VS 2022 C++ x64/x86 Spectre-mitigated libs (Latest)

  • C++ ATL for latest v143 build tools with Spectre Mitigations (ARM64/ARM64EC)

  • C++ ATL for latest v143 build tools with Spectre Mitigations (x86 & x64)

  • C++ MFC for latest v143 build tools with Spectre Mitigations (ARM64/ARM64EC)

  • C++ MFC for latest v143 build tools with Spectre Mitigations (x86 & x64)

  • Windows Driver Kit

Tip

Use the Search box to look for "64 latest spectre" (in English installations) or "64 latest" (in non-English installations) to quickly see these components.

Image showing the six components listed above with checkboxes set

Note

The Desktop development with C++ workload selected above does not install the Windows SDK 10.0.26100.1.

download icon for SDK Step 2: Install SDK

Installing Visual Studio will not download the latest SDK version, use the following link to install SDK:

The provided links for the SDK and the WDK have matching build numbers, which is always required for the kits to work together. If you decide to install your own SDK/WDK pair, perhaps for a different Windows version, ensure that the build numbers match. For more details, see Kit versioning.

download icon for WDK Step 3: Install WDK

The WDK Visual Studio extension is included in the default WDK installation.

In Visual Studio versions 17.11.0 and later, the WDK extension should be installed with Visual Studio. However, the WDK installer settings still show the checkbox for the VSIX extension installation. You need to deselect this checkbox to prevent an install failure.

Install Windows Driver Kit Visual Studio extension checkbox

Tip

If you can't find driver project templates in Visual Studio, the WDK Visual Studio extension didn't install properly. To resolve this,launch Visual Studio Installer, click "Modify", add "Windows Driver Kits" in the Individual Component tab and Click "Modify"

download icon for EWDK Enterprise WDK (EWDK)

As an alternative to downloading Visual Studio, the SDK, and the WDK, you can download the EWDK, which is a standalone, self-contained command-line environment for building drivers. It includes Visual Studio Build Tools, the SDK, and the WDK.

The latest public version of the EWDK contains Visual Studio 2022 Build Tools 17.10.5 and MSVC toolset v14.40

The EWDK also requires the .NET Framework version 4.7.2. For more information about other requirements for the .NET Framework, see .NET Framework system requirements.

Once you have downloaded the ISO, use these steps to set up your build environment:

  1. Mount the EWDK ISO from a drive volume. Network share paths aren't currently supported.

  2. Run 'LaunchBuildEnv.cmd'.

  3. In the environment created in step 2, type SetupVSEnv, and then press Enter.

  4. Launch devenv.exe from the same environment, using the full file path. For example: "C:\Program Files\Microsoft Visual Studio\2022\%Community|Professional|Enterprise%\Common7\IDE\devenv.exe"

  5. When you're done with the build environment, you may want to eject the ISO.

You can optionally use the Visual Studio interface with the build tools provided in the EWDK. To do this, ensure that the Visual Studio major version matches the version of the Visual Studio Build Tools in the EWDK. For example, Visual Studio 2022 works with the EWDK that contain VS17.X build tools. For a list of Visual Studio 2022 version numbers, see Visual Studio 2022 Releases.

Kit versioning

A full kit build string includes as its last two components, the build number and a QFE (Quick Fix Engineering) value. For example, 10.0.22621.2428 has a build number of 22621, and a QFE value of 2428.

To build a driver, the build number of your SDK installation must match the build number of your WDK installation. The QFE values does not need to match unless your driver uses functionality that is only available in the headers included with a later QFE.

A quick way to see the full build string for locally installed kits is to go to Windows settings (Win+I), navigate to Apps, then Installed apps, and in the Search box type kit. The full build string appears to the right of the kit name. If you navigate to C:\Program Files (x86)\Windows Kits\10\Include, note that the QFE shown there is hardcoded to .0, so this is not a reliable way to check your QFE identifier. Also note that when you install a kit, the new installation replaces any previously existing installation of the same build number. When you install Visual Studio with the Desktop development with C++ workload, if the installation payload includes the Windows SDK, the right-hand Summary pane also shows a hardcoded .0 for QFE.

Driver samples for Windows

To download the driver samples, do one of the following:

Download the WDK Insider Preview

Download previous versions of the WDK

Download the Windows Assessment and Deployment Kit (Windows ADK)

Download the Windows HLK

Download the Windows Debugging Tools (WinDbg)

Download Windows Symbol Packages

See also

Windows 11 hardware requirements

Install the WDK using WinGet

Learn what's new in driver development

Review known issues