【问题标题】:Why would Browse Information in Visual Studio 2008 stop being updated?为什么 Visual Studio 2008 中的浏览信息会停止更新?
【发布时间】:2009-11-20 22:56:49
【问题描述】:

我正在 Visual Studio 2008 中开发一个相当大的(我认为 - 32 个项目大吗?)多项目“解决方案”。因为它是一个遗留系统,代码主要是 C ,虽然我不要认为这与我的问题密切相关。

最近(但我不确定最近多久),我注意到我的浏览信息 - 允许一个宏、函数、变量的“转到定义”和“转到声明”的 VS 工具,等等 - 没有被更新。我会在某些东西上尝试“转到定义”,IDE 会告诉我“符号 '' 没有定义”,或者,如果它是我移动过的东西,会转到正确的文件但错误点。

我尝试为解决方案中的所有项目构建浏览信息,但这没有帮助。然后我在MSDN 上读到我应该这样做,而是应该在构建所有项目之后,以所有 .sbr 文件作为输入运行 BSCMAKE我>。 (我相信,但不确定,.sbr 文件是在编译文件时自动生成的。)

我猜是这一步(使用所有 .sbr 文件运行 BSCMAKE)没有发生,但我不知道在哪里可以找到设置,如果有的话一,它控制整个解决方案(而不是一次一个项目)。

VS 是否有其他文件(除了 .bsc)可以从中获取此信息? (换句话说,我是不是完全找错了树)?

【问题讨论】:

    标签: visual-studio-2008 browse-information


    【解决方案1】:

    您是否尝试过删除位于解决方案文件 (.sln) 旁边的 IntelliSense 文件 (.ncb)?因为,.ncb 文件可能已损坏。你可以阅读更多关于问题here

    大多数时候,当您收到“未定义符号”时,是因为源文件缺少#include。确保它存在并且您可以打开它。

    此外,定义和宏也会使 IntelliSense 混乱。你的代码最近有什么变化吗?

    据我了解,没有设置可以激活 BSCMAKE。编译完成后需要调用该命令。

    【讨论】:

    • 我删除了 .ncb 文件,并且(在让 Intellisense 重建一段时间后)更改的符号可以导航。谢谢!
    【解决方案2】:

    自从您从 VS2005 迁移项目并且 .ncb 文件包含有关 项目中的各种变量,我建议你尝试删除.ncb文件然后重建 VS2008 或 VS2010 中的项目。

    以上尝试后,如果不修复,也试试这个。

    我们可以定义以下格式的函数。

    类型:1

    func(int i, char c)
    
    {
    .....
    ....
    .....
    }
    

    类型:2

    func(i, char c)
    
    int i;
    
    char c;
    
    {
    .....
    ....
    .....
    }
    

    如果你定义像类型 2,然后按可变 F12 键(转到减速),它不会 工作。请像类型 1 一样更改,然后尝试。它会正常工作的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多