Visual Studio C++项目中,转到定义打开对象浏览器而不是转到源代码

3
我看到了以下问题并尝试了它们的所有答案: 换句话说,我已经尝试过:
  • 清理项目并删除所有生成的项目文件
  • 重置所有键盘映射
这个问题与上述问题的区别在于:
  1. 这是一个C++项目,不是C#,没有引用和.NET版本。
  2. 我没有安装也没有使用ReSharper程序。
  3. 我尝试在另一个目录中检出相同的代码和解决方案,问题就不再出现了(但在原始目录中进行干净检查后仍然存在)。
  4. 这个问题是从今天开始的,我不知道可能导致它发生的事件。我没有安装任何新插件或类似的东西。最近发生的唯一一件事是昨天我将一些NUNIT引用安装到了同一解决方案中的一个C#项目中。

由于上面列出的其他帖子没有明确列出问题的详细信息,这是正在发生的情况的详细描述

我试图使用F12或右键菜单查看对象的定义(或声明): enter image description here 但是,它并没有跳转到源代码(即HeartBeat类),而是显示了一个可能性列表: enter image description here 所有这些引用都会打开对象浏览器窗口,而不是跳转到源代码: enter image description here 如何将Visual Studio的行为恢复为正常状态?

这听起来像是在VS中提交“帮助->发送反馈”,然后观察响应页面的内容。 - SoronelHaetir
@SoronelHaetir,如果我明年想要一个解决方案,那当然可以。就像问题中提到的,我可以通过查看新的解决方案来解决这个问题,但这对我或任何遇到此问题的人来说都不是很令人满意。 - Fantastic Mr Fox
你需要知道的是,在最糟糕的情况下,你可以通过运行 devenv.exe /resetuserdata 来完全重置你的 VS。 - Dean Seo
@DeanSeo,我不知道这个。你应该把它做成一个答案。而且它确实有效,所以一定要加上。 - Fantastic Mr Fox
1个回答

3
正如OP所提到的,/resetuserdata 命令将使你的Visual Studio恢复正常,具体操作如下:
devenv.exe /resetuserdata

虽然这不是根本解决方案。

这种奇怪的情况特别容易发生在您同时运行多个Visual Studio,并且只在其中一个上更改了一些配置。

这是因为Visual Studio试图共享相同的.vssettings,每次退出时都会覆盖该文件,以使.vssettings始终具有您最新的配置集 -“最新配置”的定义是您关闭的最后一个Visual Studio的配置。

因此,您认为已进行的配置更改可能不是您的Visual Studio正在运行的配置。

为防止发生这种情况,您可以将.vssettings设置为只读。 然后,每次您关闭它时,您的VS都会抱怨,但您可以保持自定义配置的安全性。(我同意,这有点丑陋)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接