如何在VS2022中使用VS2019旧版本WDK及解决编译失败问题
在VS2022 Community中使用VS2019版WDK编译Win10驱动的方案
一、前置准备:清理并安装正确的WDK版本
- 卸载已安装的「WDK for Windows 10 version 2004」,避免版本冲突
- 下载并安装VS2019配套的WDK 19041(对应Win10 2004/21H2),安装时务必勾选包含SDK 19041的选项,安装过程中保持默认关联VS2019即可
二、手动关联VS2022与VS2019版WDK
- 打开VS2022,进入「工具 > 获取工具和功能」
- 在安装界面切换到「单个组件」,找到「Windows驱动程序工具包」分类,勾选与WDK 19041匹配的工具组件,完成安装
- 配置驱动项目属性:
- 右键驱动项目,选择「属性」
- 在「配置属性 > 常规」中,将「平台工具集」修改为
WindowsKernelModeDriver10.0 (v142)(VS2019的内核驱动工具集) - 在「配置属性 > Driver Settings > General」中,将「Target Platform Version」设置为
10.0.19041.0
三、编译与加载问题排查
编译失败解决
- 检查项目的「VC++目录」设置,确保包含目录、库目录均指向WDK 19041的安装路径,而非VS2022默认的高版本WDK目录
- 确认链接器输入的库文件为WDK 19041版本的内核库,避免版本不匹配
驱动无法加载解决
- 确认目标测试系统为Win10 2004/21H2版本,开启测试签名模式:以管理员身份运行命令提示符,执行
bcdedit /set testsigning on,重启系统后再尝试加载 - 检查驱动代码,避免使用Win10 2004之后引入的API,替换为对应版本兼容的接口;同时确保驱动的硬件ID与目标设备匹配
内容的提问来源于stack exchange,提问作者wyllle
相关产品推荐
相关产品推荐

