如何在VS 2022编译WDM驱动时启用C6067警告?
在VS 2022 WDM驱动项目中启用C6067编译警告
你遇到的问题是:代码中DbgPrint格式符不匹配触发的C6067警告仅在编辑器中显示,开启/W4编译时却不输出。这是因为C6067属于代码分析类警告,而非普通编译器警告,默认/W4不会包含这类分析型检查,需要手动配置才能在编译阶段触发。
以下是具体配置步骤:
1. 启用代码分析编译功能
- 右键驱动项目 → 选择「属性」;
- 进入「配置属性 → C/C++ → 常规」,将「启用代码分析」设置为「是」;
- 也可以直接在「配置属性 → C/C++ → 命令行」中添加编译选项:
/analyze。
2. 强制指定启用C6067警告
如果启用代码分析后仍未显示该警告,可单独配置:
- 进入「配置属性 → C/C++ → 代码分析 → 常规」,在「附加警告」输入框中添加
C6067; - 或者在命令行中添加:
/analyze:warning C6067(若要将警告视为错误,可追加/WX)。
替代方案:代码中强制开启警告
也可以在代码开头添加预编译指令,直接将C6067转为错误(或警告):
#pragma warning(error:6067) // 转为错误,强制修正 // 或 #pragma warning(default:6067) 转为普通警告
内容的提问来源于stack exchange,提问作者c00000fd
相关产品推荐
相关产品推荐

