#define WINVER 0x0601 #define _WIN32_WINNT 0x0601 And using the TargetPlatformVersion in Visual Studio projects. This gives you modern tooling while still supporting Windows 7 (though some newer KMDF features will be unavailable). | Aspect | Win7 WDK (legacy) | Win10/11 WDK | |---------|------------------|---------------| | Build system | Build.exe + sources | MSBuild / VS projects | | Debugging | WinDbg 6.11 | WinDbg Preview | | WDF version | 1.9 | 1.33+ (KMDF) / 2.x (UMDF) | | OS target | Windows 7 – Server 2003 | Windows 7 through 11 | | Signing | SHA1 & SHA256 | SHA256 only (with SHA1 deprecated) |
If you're developing a new driver, avoid the original Windows 7 WDK and instead use a modern WDK with Windows 7 as a target OS . Only use the legacy WDK if maintaining a 10+ year old driver that cannot be recompiled with newer toolchains.

We would like to acknowledge that we are living and working with humility and respect on the traditional territories of the First Nations peoples of British Columbia.
We specifically acknowledge and express our gratitude to the keepers of the lands of the ancestral and unceded territory of the xʷməθkʷəy̓əm (Musqueam), Skwxwú7mesh (Squamish), and səl̓ilwətaɁɬ (Tsleil-Waututh) Nations, where our main office is located.
We also recognize Métis people and Métis Chartered Communities, as well as the Inuit and urban Indigenous peoples living across the province on various traditional territories.