55

我刚刚在我的机器上安装了 Visual Studio 2012,我之前有 Visual Studio 2012 RC,我之前卸载过它。安装成功,但是我打开一个项目后C#编辑器不工作,就像这样的纯文本编辑器:

C# 编辑器

我试过修复它,完全卸载它,然后重新安装,但没有成功。

有人有想法吗?

我不知道它是否相关,但有时在创建新项目或打开现有项目时也会出现此错误:

与误差

提前致谢

4

8 回答 8

85

我很确定有关 ManagedObjectFactory 的错误与您描述的症状有关。此错误表明您的 Visual Studio 安装(尤其是 C# 语言服务)已损坏。这很可能是由我们目前正在努力确定的一些设置问题引起的。

我有机会调查此错误,发现我们的一个互操作程序集意外安装到 GAC 中,而它不应该安装。它是由 Windows 安装程序安装到 GAC 中的,这表明这是一个设置问题。解决方法是从 GAC 中卸载它,但因为它是由 Windows 安装程序安装的,所以它不仅仅是“gacutil /u”。您需要按照KB873195中描述的过程将其从 GAC 中删除:

  1. 删除与“Microsoft.VisualStudio.CSharp.Services.Language. 来自“HKLM\SOFTWARE\Classes\Installer\Assemblies\Global\”的“互操作”程序集。请注意“互操作”部分,因为还有 Microsoft.VisualStudio.CSharp.Services.Language 程序集,它必须在 GAC 中。
  2. 启动“VS2012 x86 Native Tools 命令提示符”并运行“gacutil /u Microsoft.VisualStudio.CSharp.Services.Language.Interop”。

免责声明:我是 Visual Studio C# IDE 团队的开发人员。

于 2012-08-20T18:04:23.897 回答
7

可能是 Visual Studio 中禁用了某些设置。检查以下设置:

Tools->Options->Text Editor->C#->General->Auto list members
Tools->Options->Text Editor->C#->General->Parameter information

编辑:

还要检查

Tools->Options->Text Editor->C#->Intellisense->
Show completion list after a character is typed

这是ScottGu 博客上的一篇文章,可能会有所帮助:D

第二次编辑:

ScottGu 的博客上还有一篇题为No Intellisense with VS 2010 RC (and how to fix it)的文章。让我知道这是否有帮助。该补丁可在此处获得

第三次编辑:

Tools –> Import and Export Settings ->  Reset all Settings

如果需要,您可以备份旧设置。此解决方案适用于 Visual Studio 2012。我相信这应该有效

第四次编辑:不要只为 C# 更改它,而是为所有语言更改它

Tools > Options > Text Editor > All Languages

通常,请确保已主动选中 Statement Completion 部分中的复选框(未灰显)。有可能有一个蓝色方块而不是一个刻度线。由于勾选框为 3 状态,正方形表示“部分选择”已生效。勾选标记生效后,重新启动 Visual Studio 并重试。

最终编辑:

看起来安装缺少一些文件。我建议您下载该软件的新副本并从头开始安装,并启用默认设置。

于 2012-08-16T13:25:46.983 回答
6

我刚刚遇到了和你一样的问题,并按照我在这里找到的说明进行操作。

我发现有效的部分是:

  1. 尝试在命令提示符中运行 devenv /Resetsettings 以消除设置损坏的原因。
  2. 尝试在命令提示符中运行 devenv /ResetSkipPkgs。
  3. 尝试在命令提示符中运行 devenv /Safemode 以查看是否可以正确应用它。
  4. 尝试在命令提示符中运行 devenv /Resetuserdata 以重置所有 VS 环境和自定义设置。
于 2012-08-16T13:30:32.863 回答
3

尝试删除:

  • %appdata%\Roaming\Microsoft\Microsoft Visual Studio
  • %appdata%\Roaming\Microsoft\VisualStudio
  • %appdata%\Local\Microsoft\VisualStudio

这应该会删除您的所有 Visual Studio 设置(来自所有版本)并将其恢复为默认值,以防 RTM 不喜欢的 RC 留下一些旧设置。

编辑:

你也想删除

  • 我的文档/Visual Studio 2012/设置
于 2012-08-16T13:27:39.987 回答
1

如果您有任何 RC 版本,则可能是原因。

我在使用 Visual Studio 2012 开发人员版时遇到了这个问题。后来我发现我有 Express Edition RC,我删除了它,它解决了问题。

然后我应用了eggie的解决方案

于 2012-09-14T15:05:50.393 回答
1

如果你将vs2012安装在另一个磁盘(比如磁盘D:)而不是RC(安装在磁盘E:)上,尝试复制E:\Program Files\Micosoft Visual Studio 11到D:上的相应文件夹。

于 2012-08-16T13:35:15.297 回答
0

好吧,我仍然不知道是什么问题,但通过卸载Visual Studio 2012 Final,然后安装Visual Studio 2012 RC,然后在不卸载RC的情况下再次安装最终版本来解决它。

感谢大家的帮助。

于 2012-08-17T02:41:49.357 回答
0

Oleg 的解决方案(或评论中建议的变体)或修复 Visual Studio 都不适合我。我终于偶然发现了这里显示的修复

所以3个简单的步骤:

1) 关闭 Visual Studio 的所有实例

2)以管理员身份Developer Command Prompt for VS2012运行(在开始菜单中搜索)

3)然后输入devenv.exe /setup

那是为我做的。

于 2013-05-16T21:24:02.897 回答