【问题标题】:WDK C++ Project Needs to change debug compiler strictnessWDK C++ 项目需要更改调试编译器严格性
【发布时间】:2012-10-12 15:37:50
【问题描述】:

我对 WDK 和 Visual Studio 的驱动程序比较陌生。

当我在调试模式下编译项目时,我没有收到任何警告或错误,项目编译并运行良好。但是,当我在发布模式下编译时,编译停止并且我收到一条错误消息,指出已找到警告并被视为错误。详细信息将转储到项目根目录中的日志文件中。

我想做的是让调试模式下的编译器与发布模式编译器一样严格。目前它们都处于默认状态。发布模式似乎更严格。我正在使用 VS 2010 和 WDK。我不知道该怎么做。如果此设置处于 VS 级别而不是每个项目级别,那将是理想的。

另外,如果警告显示在 VS IDE 而不是日志文件中,那就太好了。

【问题讨论】:

  • 这是 Windows 8 的驱动程序吗?如果不是,为什么要使用 Visual Studio 构建?
  • 驱动程序只能从 VS2012 开始使用 VS 构建。对于早期版本,VS 只能用作 IDE。目标操作系统在这里无关紧要,不一定是 Windows 8。

标签: c++ visual-studio-2010 compilation driver wdk


【解决方案1】:

Visual Studio 对调试和发布模式有不同的配置设置。

在项目>项目属性->链接器等中检查是否有相关配置......

如果调试和发布模式配置不匹配,请更改它。这应该工作

--阿里恰查尔 --巴基斯坦

【讨论】:

    【解决方案2】:

    调试和发布编译中存在代码差异,可能会导致与编译器的严格性无关的警告。最明显的是在日志中;在发布版本中,KdPrint/KdPrintEx 调用将被丢弃。很有可能您的某些函数输入参数仅用于打印,如果它被省略,您最终会收到未使用的参数警告 - 这是调试与发布编译中最常见的区别。

    即使您有 VS2010 解决方案,您的驱动程序也不是使用 VS 编译器编译的,而是使用 WDK 编译器编译的,因此此处与 VS 设置无关。您可以将您的解决方案迁移到集成了驱动程序支持的 VS2012。

    【讨论】:

      猜你喜欢
      • 2012-07-07
      • 2013-02-04
      • 1970-01-01
      • 2015-06-15
      • 1970-01-01
      • 2017-06-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多