What's the latest WDK that can be used to target 2008 R2 (no SP) (KMDF)?

Hi,

we’re building a driver that has to work with Windows 2008 R2 (without any service packs). We’re currently using WDK 8/VS 2012 but we’d like to update to a later WDK version - ideally one that supports VS 2019 and building with the Spectre mitigated toolsets.

Looking at the WDF versions I can see that targeting WDF 1.9 (which AFAIK is the version that shipped with 2008 R2) is still possible with the latest Windows 10 WDK. So the WDF version should be fine. Only all pages that I could find that say anything about the compatibility of the WDK itself say it can be used to target Windows 7 SP1 and Server 2008 R2 SP1. Which implies that 2008 R2 “SP0” isn’t supported. Now I hope/wonder if this is just a restriction for certain driver types or maybe when using specific functions/features.

I’d appreciate any advice.

Let’s think about it. What are the odds that a driver built to target 2008 R2 SP1 will not work on 2008 R2 Gold? The odds are fantastically low. I doubt there were any useful kernel entry points added between there. You will have signing problems, because 2008 R2 Gold doesn’t support SHA-256 certs and it is essentially impossible to find an SHA1 cert today, but we’re all descending into signing hell anyway.

“Supported” does mean you can’t get tech support, but you’re not going to get much tech support on a 13-year-old system anyway.

Thanks!

We have a SHA-1 certificate that’s good until mid April. After that… we’ll have to see. I’m still hoping MS will come to their senses and allow attestation signing for older Windows versions. Including WS 2008 (R2) - after all it’s still covered by the “extended security updates” program.

I doubt there were any useful kernel entry points added between there.

I’m not worried about any of our code. I’ve tested it and the driver loads and runs successfully. And while it’s impossible for me to get 100% line coverage in testing (a few error handling paths are next to impossible to cover), I do have coverage for all kernel/WDF calls that the driver makes. What I’m worried about is the stuff that comes with the WDK/the toolset - because I simply don’t know what hidden booby traps there might be.

I just wanted to ask here before doing something stupid.