Visual studio Visual Studio Intellisense因宏文件而崩溃

Visual studio Visual Studio Intellisense因宏文件而崩溃,visual-studio,visual-studio-2005,intellisense,Visual Studio,Visual Studio 2005,Intellisense,在VisualStudio2005中,我有一个带有预处理器宏的.h文件。对于VisualStudio的Intellisense来说,它们显然太复杂了,因为如果它们存在,会使VisualStudio崩溃,而如果它们不存在,则工作正常。是否有人知道一种方法可以阻止Visual Studio解析Intellisense文件,但仍将其包含在生成中。顺便说一下,我已经尝试了以下方法: 通过重命名feacp.dll禁用Intellisense。工作,但不切实际 视觉辅助。可以,但是250美元 安装Visua

在VisualStudio2005中,我有一个带有预处理器宏的.h文件。对于VisualStudio的Intellisense来说,它们显然太复杂了,因为如果它们存在,会使VisualStudio崩溃,而如果它们不存在,则工作正常。是否有人知道一种方法可以阻止Visual Studio解析Intellisense文件,但仍将其包含在生成中。顺便说一下,我已经尝试了以下方法:

  • 通过重命名feacp.dll禁用Intellisense。工作,但不切实际
  • 视觉辅助。可以,但是250美元
  • 安装Visual Studio SP1+Intellisense修补程序(KB947315)。无法修复(并且占用了1GB的硬盘空间)

  • 首先要尝试的是安装VisualStudio2005SP1。这修复了许多与intellisense相关的问题,可能会对您有所帮助


    如果这不能解决问题,请尝试从项目中排除该文件。这将防止它的任何内容出现在VisualStudio功能(如intellisense)中。如果它只是一个头文件,它不应该影响构建,因为实际的文件不会被删除,它不会被认为是项目的一部分

    好吧,为了别人的利益,我要自己解决这个问题!我一直在摆弄,答案如下。如果您有这个问题,并且您删除了您的ncb文件以强制Intellisense更新,您可以向自己证明这是有效的

    #ifdef将.h文件中有问题的代码删除如下:

    #ifdef SOMETHING_UNIQUE
    <the offending code>
    #endif
    

    Intellisense现在将忽略导致其崩溃的.h文件中的代码(在编辑器中它将变灰),但它仍然会被编译。

    我编辑了我的问题,补充说我已经安装了SP1。这并不能解决问题。此外,从构建中删除该文件也没有帮助(我已经尝试过了),因为VS搜索#include树(我猜)后仍能找到该文件。显然,我在两天内无法接受这个答案…但这是答案,所以请随意使用!
    #define SOMETHING_UNIQUE