visual-studio - 如何摆脱 WPP TraceEvent 宏的警告曲线?

标签 visual-studio visual-studio-2012 intellisense wdk

使用时 WPP在 Visual Studio (2012) 中每次出现 TraceEvents(...)有一个波浪下划线,帮助文本是例如

#define TraceEvents WPP_(CALL)
error: identifier WPP_Call_Foo_cppNNN not defined

好吧,它是在 WPP 预处理器创建的 .tmh 头文件中定义的,并且项目编译得很好。但 Visual Studio 不会扫描和/或识别此文件。
有没有一种实用的方法来摆脱那些波浪线?

最佳答案

为 Visual Studio 2012 编辑:

您似乎已达到 Visual Studio 2012 的 IntelliSense 引擎中预处理器的分析限制。如果更换 TraceEvents引用 WPP_Call_Foo_cppNNN ,它实际上可以毫无问题地解析标识符(直到您重建解决方案并且 tmh header 更改)。

解决方法是在Visual Studio 2013中加载解决方案,选择不是 升级编译器工具链,从而保持与 Visual Studio 2012 的向后兼容性。

Visual Studio 2013 的上一个答案:

这是在 Visual Studio 2013 中测试过的,因此它可能不适用于 Visual Studio 2012。我找不到支持 Visual Studio 2012 的 WDK 版本,因此如果出现以下情况,您需要让我知道如何配置环境以下步骤不起作用。

构建项目后(确保 .tmh 文件存在),执行 项目→重新扫描解决方案命令。

我还建议您通过以下步骤将文件与 C++ 编辑器相关联:

  • 开通 工具 → 选项... → 文本编辑器 → 文件扩展名
  • 分机分机 tmh 与编辑 Microsoft Visual C++
  • 关于visual-studio - 如何摆脱 WPP TraceEvent 宏的警告曲线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13452337/

    相关文章:

    visual-studio - 查找所有可选参数并将其删除

    xml - 由于自动加载重复的 xsd 文件,Visual Studio 2012 XML 智能感知被破坏

    c# - Visual Studio 2012 和 EmguCV 问题

    c++ - 收集 Visual Studio IntelliSense 错误并通过脚本将它们转储到文本文件?

    c - 在MSVC中无法查看外部库的源代码但有源代码

    c# - 如何从另一个项目添加对共享代码项目 (.shproj) 的引用

    visual-studio - Visual Studio 2008 - 工具栏缺少 'Release'/ 'Debug' 下拉构建配置

    c# - 将 "nameof"关键字与仅设置属性一起使用

    svn - 如何避免 Visual Studio 2012 项目文件中的多个发布配置文件?

    visual-studio-2013 - 如何在评论中禁用 Visual Studio 的自动完成