AI摘要:这份文档总结了配置驱动开发环境时遇到的常见问题及解决方案,包括:**WDK安装失败**(SDK版本不匹配),**驱动安装失败**(需无签名验证、管理员权限),**驱动启动失败**(未开启内核调试和测试签名),以及**DbgPrint输出不显示**和**DebugView无法捕获日志**(需修改注册表、管理员权限、开启捕获内核日志)。
1.WDK装不上?
- 1.确保VS2019中的SDK与微软的WDK版本对应,且注意VS2019与其对应支持的WDK的生命周期
2.驱动安装失败?
- 1.注意需启动F8选择无签名验证模式
- 2.注意驱动加载程序需要以管理员模式运行
3.驱动启动失败?
- 1.注意显示内核调试信息的前提:
bcdedit /set testsigning on //确保你的系统已开启内核调试模式
bcdedit /set debug on
4.dbgprint内容不显示?
- 1.Windows 8+ 默认禁止内核 DbgPrint 输出,得改这个注册表键值。
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print Filter" /v DEFAULT /t REG_DWORD /d 0xF /f
最终我解决驱动环境开发相关问题的方案汇总
编号 | 问题 | 原因 | 解决方法 |
---|---|---|---|
1 | WDK 安装不上 | VS2019 中 SDK 版本与 WDK 版本不匹配 | 确认 VS2019 安装的 SDK 版本和目标 WDK 版本兼容,参考微软文档的 WDK 支持生命周期 |
2 | 驱动安装失败 | 系统签名强制验证或驱动加载程序权限不足 | F8 进入无签名验证模式,驱动加载程序需以管理员身份运行 |
3 | 驱动启动失败 | 未开启内核调试与测试签名模式 | 执行: bcdedit /set testsigning on bcdedit /set debug on 并重启 |
4 | DbgPrint 输出不显示 | Windows 8+ 默认禁止内核 DbgPrint 输出 | 修改注册表键值开启内核 DbgPrint:reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print Filter" /v DEFAULT /t REG_DWORD /d 0xF /f |
5 | DebugView 捕获不到日志 | 未开启 Capture Kernel 或程序权限不足 | ① DebugView 以管理员权限运行 ② Capture → Capture Kernel 勾选 ③ 确保未启用其他 NET 模式调试占用内核调试端口 |
效果如下 |