2011-07-11 88 views
53

所以我得到提示要在VS2010中下载最新的NuGet Package Manager。 所有以前的更新(包括本)已经失败:
VSIXInstaller.SignatureMismatchException: The installed version of 'NuGet Package Manager' is signed, but the update version has an invalid signature. Therefore, Extension Manager cannot install the update.如何手动卸载Visual Studio 2010扩展?

其中,在本身已经持续了一段时间,和they still haven't fixed it (look in Q&A)

好吧,很好,以前我可以简单地卸载NuGet扩展并安装最新的。但是,这一次,DisableUninstall按钮都被禁用。 所以我无法卸载,我无法升级。

Catch22。

如何从Visual Studio中手动删除NuGet扩展?
为了摆脱NuGet,我必须杀死哪些文件/文件夹/注册表项?

+14

看来有人正在进行“无主题”近距离投票杀人狂潮。我可以引用官方SO常见问题解答:**“......但如果你的问题一般涵盖程序员常用的软件工具,那么你就是在正确的地方提问你的问题!”** –

回答

81

要卸载NuGet,您必须先以管理员身份运行Visual Studio,然后您会看到卸载选项可用。

重新启动VS,但这次运行它作为您的正常帐户。当您继续安装NuGet时,您应该能够更新到未来的版本,而无需以管理员身份运行。

我相信这个问题是由于NuGet与MVC 3一起安装的。我希望将来我们不再将NuGet与其他软件捆绑在一起。

+2

嗯,当然是。谢谢。我应该更清楚地知道。 –

+0

谢谢。我的问题解决了 –

+4

是100%明确清晰,对您的用户帐户具有管理员权限不会使这项工作,你应该在菜单上右键单击VS2010,然后单击“以管理员身份运行” - 我希望这可以节省其他人一些几个小时的混乱。 – Skyguard

0

也许这是现在修复。有一个非常新的版本。 http://visualstudiogallery.msdn.microsoft.com/27077b70-9dad-4c64-adcf-c7cf6bc9970c/

http://docs.nuget.org/docs/reference/known-issues#Upgrading_to_latest_NuGet_from_an_older_version_causes_a_signature_verification_error。 查看日志时,您可能会看到提及SignatureMismatchException。 要防止发生这种情况,可以安装Visual Studio 2010 SP1修补程序。或者,解决方法是简单地卸载NuGet,然后从VS扩展库安装它。有关更多信息,请参阅http://support.microsoft.com/kb/2581019

0

如果你想删除/卸载其应用于多个项目在您的解决方案 NuGet包然后去:

  1. 工具 - > NuGet包管理器 - >管理的NuGet包解决方案

  2. 在“安装软件包”的左栏中选择“全部”,所以您将在 中看到已安装的软件包列表和管理按钮。

  3. 选择管理按钮,你会得到一个蹦出来,取消整个项目名称的复选框,并确定它

工作包管理器的其余部分将做给你。

+0

这解释了如何卸载NuGet软件包。问题是询问如何从Visual Studio中卸载NuGet扩展。 –