I am developing a kernel mode driver to support my custom PCIe device. I am using WDK 10 with the target platform set to Windows 7. Is there any reason that this driver won't support everything 7-10? Are there any precautions I should take (apart from not using API calls that are deprecated in 10 or not supported in 7; I assume the target platform setting would produce warnings/errror if I made this mistake anyway)?
According to windows docs, a pre-W10 driver must be signed using HCK, while a W10 must be signed with HLK. If I want to support 7-10, do I need to sign the same driver with both (can a driver be signed twice?) or just one of the two? Or am I better off with a third party signing service? According to this answer:
The best thing you can do is just compile your drivers using wdk10 using VS2015 keep target OS as windows7 install it on windows10 and test it using HLK.
Will a driver tested/signed with HLK install without error on Windows 7?
Just for context, I already have a proof of concept device and kernel driver working on my windows 10 test machine. I am rewriting the driver to be production quality and robust in OS support. Thanks for any input!