【问题标题】:Visual Studio 2008 Debugger incorrectly shows C++ as the language when in C# solutionVisual Studio 2008 调试器在 C# 解决方案中错误地将 C++ 显示为语言
【发布时间】:2010-05-11 21:17:11
【问题描述】:

这个问题我已经有一段时间了,但它现在阻止了我。

我编辑或创建的任何解决方案都停留在 C++ 模式。 Stack Trace 将“语言”显示为 C++,并且手表的行为有所不同——显示内存地址等。

ASP.NET 调试也受到影响,因为它根本不起作用。但是,这可能无关紧要。

我已将我的设置重置为默认设置,并仔细阅读了“工具”>“选项”对话框中的每个选项。我的想法不多了。

有什么线索吗?

更新: 我已经完全卸载了VS 2008,然后重新安装并应用了SP1。 出现同样的问题。

然后我删除了以下目录: C:\Users[用户名]\Documents\Visual Studio 2008 C:\Users[用户名]\AppData\Local\Microsoft\VisualStudio C:\Users[用户名]\AppData\Roaming\Microsoft\VisualStudio

没有变化。问题仍然存在。

【问题讨论】:

  • 您是否尝试过重置您的环境设置?工具 -> 导入和导出设置 -> 重置所有设置 -> 是 -> Visual C# 开发设置。作为评论发布,因为我不确定这是否真的是您正在寻找的答案,但值得一试。
  • 这些 .csproj 文件是通过复制现有 .csproj 文件创建的吗?
  • @PK:是的,我已将设置重置为默认设置。
  • @Paul:我创建了一个全新的 Winforms 应用程序用于测试目的。它的行为方式相同。

标签: c# visual-studio-2008


【解决方案1】:

我们可以验证解决方案和项目类型。在文本编辑器中打开 .sln 文件。寻找像这样的Project标签:

Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") -- indicates a C++ project
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") -- indicates a C# project

这些项目列在HKLM\SOFTWARE\Microsoft\VisualStudio\9.0\Projects 的注册表中。如果您打开此密钥,您应该会看到列出的这些以及许多其他项目类型:

{66A26720-8FB5-11D2-AA7E-00C04F688DDE} Solution
{F184B08F-C81C-45F6-A57F-5ABD9991F28F} VB
{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} C#
{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942} C++
{E6FDF86B-F3D1-11D4-8576-0002A516ECE8} J#
{E24C65DC-7377-472b-9ABA-BC803B73C61A} Web

我会验证 C# GUID 是否存在,并且它的值映射到看起来像 C# 的东西。

【讨论】:

  • {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 被列为项目 guid。我的安装不存在这些注册表位置 - 但是我使用的是 2008 版本,即 9.0 版与您的 8.0 版。
  • 抱歉,我更正了答案中的位置以反映 9.0 的位置。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-08
  • 2020-12-20
相关资源
最近更新 更多