如何卸载/移除Visual Studio SP1

33

我使用的是Windows 7 64位操作系统,安装了Microsoft Visual Studio 2010和SP1补丁。在“控制面板 | 程序和功能”中,可以看到3个Visual Studio 2010的条目,其中第三个是ADO.Net。

我尝试先卸载SP1,但不知何故失败了。系统要求插入Visual Studio 2010安装盘,我就插入了。可惜,卸载完成后,SP1仍然存在于“程序和功能”列表中。

我尝试卸载VS2010,卸载成功了,但是SP1的条目还在。我又试图卸载SP1,但是得到一条消息说我必须安装VS2010,所以我咬紧牙关重新安装了VS2010。这时,我只收到一个选项来安装SP1,我选择了安装,也就是重新应用了一次SP1。

刷新“程序和功能”,又出现了3个条目。我能够卸载SP1,至少选项已经出现并且我成功地完成了卸载。我把VS2010安装盘放在光驱里。可惜的是,关闭并重新打开“控制面板 | 程序和功能”,SP1的条目仍然存在。选择卸载/更改条目会弹出一个对话框,要求安装SP1。

看来SP1可能已经被部分删除,但显然不是完全删除。这个条目和与之相关的可执行文件/DLL仍然存在。

我该如何彻底删除Visual Studio 2010 SP1以及在此过程中安装的任何垃圾文件?


如果您能解释为什么要卸载SP1,那会很有帮助。也许还有其他方法可以实现您想要的目标。 - CrazyCasta
3
我想要卸载Visual Studio 2010。VS2010 SP1显示为单独的行项目。在未先卸载SP1的情况下卸载VS2010会导致SP1仍然安装但没有VS2010。 - Sarah Weinberger
5个回答

59

我刚刚以以下参数运行了VS2010 SP1的网络安装程序。这强制它卸载并让我通过了阻塞问题:

VS10sp1-KB983509.exe /uninstall /force


3
此解决方案优于手动注册表操作。 - Wim Ombelets
14
这对我有用。我必须先从http://www.microsoft.com/en-gb/download/details.aspx?id=23691下载安装程序,但它不到1MB大小。 - Jason Steele
感谢詹姆斯和杰森指引我找到安装程序,因为我也在我的系统中找不到它。 - ewilan
4
对我没用。我试过使用/force,这避免了彻底拒绝任何操作,但最终的结果是“不适用”或类似的消息。好吧。 - hyde
4
下载不再可用,但我成功地使用与原问题相同的/uninstall /force参数在 C:\ProgramData\VS\vs10sp1\SetupCache\Setup.exe 处运行了缓存的 Setup.exe。 - lack

12

我尝试了James上面提供的解决方案,但仍然无法解决问题,并且仍然需要安装光盘。

经过进一步搜索,我找到了这个解决方案,对我有效:

微软卸载Visual Studio 2010工具


1
这是对我有效的第一个解决方案。我之前一直被提示插入不存在的源CD,出现了“网络位置不可用”的问题。感谢微软提供这个工具。无需在注册表中进行繁琐操作。 - Jonathan Lidbeck
这只是卸载了我的计算机上的VS2010,使SP1保留下来,所以现在我必须重新安装VS2010才有机会卸载SP1...太好了... - Jérôme MEVEL

8
随着生活的继续,我选择了一个可能不是最好的解决方案,但这是一个解决方案,所以这就是我所做的。
我找到了一篇文章,讲述了如何从控制面板 | 程序和功能中删除条目。http://www.roelvanlisdonk.nl/?p=1179。然后我执行了其他步骤。
首先,根据链接,由于我使用的是Windows 7 64位系统,我进入了注册表中的HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall。
在注册表中有两个位置,一个显而易见,名称完全拼写正确,另一个将DisplayName属性设置为产品名称作为GUIID的一部分。我删除了这两个条目。主要条目的键名为漂亮的名称,它会从列表中删除程序ID条目。
我注意到,几个产品共享相同的InstallSource。这很奇怪(Smallville rocks and sadly ended),全部都在C:\Windows\TEMP文件夹中。由于实际的安装程序在ProgramData文件夹下,我不确定TEMP文件夹中的条目是用来做什么的。

我删除了ProgramData部分,但保留了C:\Windows\TEMP,虽然我仍在考虑清理它,但我很谨慎。

然后我删除了所有其他的VS2010组件,只留下了运行时。顺便说一句,不要忘记删除Premptive昂贵的、基于最终用户安装的定价产品。那是在Dotfuscator下面更高的位置(按名称排序升序)...

这样就基本清理干净了。我不确定什么使用了VS2010运行时,所以我把它留下了。我认为这就是安装在VS2010文件夹中的内容。

一个旁注:我仍然觉得微软在注册表中遵循...\Software\Microsoft\条目很奇怪。他们在其他任何地方都没有这样做。为什么在那里呢?

详细信息: 在注册表中,信息如下:

{5AB7D739-1735-3A9E-BE73-C43507CB4E6F} 卸载字符串: MsiExec.exe /X{5AB7D739-1735-3A9E-BE73-C43507CB4E6F} 安装源: C:\Windows\TEMP\Microsoft Visual Studio 2010 Service Pack 1_10.0.40219\ 安装位置: C:\ProgramData\VS\vs10sp1\SetupCache\ 卸载路径: C:\ProgramData\VS\vs10sp1\SetupCache\ 卸载字符串: C:\ProgramData\VS\vs10sp1\SetupCache\Setup.exe

使用C:\Windows\TEMP...40219文件夹的共享产品: Microsoft SQL Server 2008 R2 Data-Tier Application Framework Microsoft SQL Server 2008 R2 Data-Tier Application Project Microsoft SQL Server 2008 R2 Management Objects Microsoft SQL Server 2008 R2 Transact-SQL Language Service Microsoft SQL Server System CLR Types Microsoft Visual C++ 2010 x86 Runtime - 10.0.40219 Microsoft Visual F# 2.0 Runtime

其他产品使用的路径:

C:\Windows\TEMP\Microsoft Visual Studio 2010 Service Pack 1_10.0.40219\ C:\Windows\TEMP\Microsoft Visual Studio 2010 Service Pack 1_10.0.40219\Dotfuscator\

其中两个密钥共享相同的C:\ Windows \ TEMP文件夹条目(InstallSource)之一: InstallSource {09C52940-A4D1-4409-A7CC-1AAE630CF578} {1AA5BD63-6614-44B2-88A7-605191EDB835}


2

这里提供的解决方案都无法帮助我卸载VS 2010 SP1。但是,Visual Studio 2010卸载实用程序可以完美地卸载所有内容,除了VS 2010 SP1。

为了卸载SP1,我前往安装包缓存并执行以下设置:

C:\ProgramData\VS\vs10sp1\SetupCache>setup /uninstall /force


这就是确切的内容。(即使该条目保留在“程序和功能”中) - Jérôme MEVEL

2
这篇在MSDN论坛上的回答阐述了手动卸载的步骤,但更重要的是它还提供了一个微软FixIt工具VS2010卸载实用程序的链接,这是我唯一能够摆脱SP1的方法。请注意保留HTML标签。

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