如何卸载“Microsoft Advertising SDK” Visual Studio扩展?

179
在Visual Studio(我使用的是2012版本)列出的扩展之一是“Microsoft Advertising SDK for Windows 8.1”。我喜欢卸载不需要的扩展,但是这个扩展不允许我这样做。如果我将鼠标悬停在(启用的!)按钮上,它会在工具提示中显示:

  

无法通过扩展和更新卸载此产品

它看起来像这样:

extensions

在第二次检查时,我看到一个类似的(更有帮助的)消息在右下角:

  

您需要使用Windows控制面板中的“程序和功能”窗格来删除此扩展。

很容易,对吧?但是它不在那里!

uninstalls

或者:

uninstalls search

除了屏幕上的说明外,我还进行了搜索。唯一有用的来源是这个MSDN页面,基本上说的是一样的。 链接现在已失效

评论者提到扩展网页(请参见“评论”和“问与答”选项卡)有一些类似的投诉。我也在那里跨发布了这个问题。 链接现在已失效,但如果您搜索,其他人仍在MSDN论坛上抱怨

无论如何:有没有简单的方法可以卸载此扩展?


其他人也在抱怨... http://visualstudiogallery.msdn.microsoft.com/3d3fa204-0641-4317-ab2c-50092f732edb - Paolo Tedesco
啊,谢谢你提供链接,我之前没找到它(这有点儿傻),我也已经在那里添加了评论。 - Jeroen
7个回答

293

请在以管理员身份运行的 Powershell 提示符中执行以下操作:

gwmi Win32_Product -Filter "Name LIKE 'Microsoft Advertising%'"

它应该展示罪犯:

IdentifyingNumber : {6AB13C21-C3EC-46E1-8009-6FD5EBEE515B}
Name              : Microsoft Advertising SDK for Windows 8.1 - ENU
Vendor            : Microsoft Corporation
Version           : 8.1.30809.0
Caption           : Microsoft Advertising SDK for Windows 8.1 - ENU

IdentifyingNumber : {6AC81125-8485-463D-9352-3F35A2508C11}
Name              : Microsoft Advertising SDK for Windows Phone 8.1 XAML - ENU
Vendor            : Microsoft Corporation
Version           : 8.1.40427.0
Caption           : Microsoft Advertising SDK for Windows Phone 8.1 XAML - ENU

IdentifyingNumber : {5C87A4DB-31C7-465E-9356-71B485B69EC8}
Name              : Microsoft Advertising SDK for Windows Phone - ENU
Vendor            : Microsoft Corporation
Version           : 6.2.960.0
Caption           : Microsoft Advertising SDK for Windows Phone - ENU

IdentifyingNumber : {EBD9DB6D-180B-4C59-9622-B75CC4B32C94}
Name              : Microsoft Advertising Service Extension for Visual Studio
Vendor            : Microsoft Corporation
Version           : 12.0.40402.0
Caption           : Microsoft Advertising Service Extension for Visual Studio

然后要实际卸载,请将| foreach { $_.Uninstall() }添加到命令中:

gwmi Win32_Product -Filter "Name LIKE 'Microsoft Advertising%'" | foreach { $_.Uninstall() }

每个都应该显示:

__GENUS          : 2
__CLASS          : __PARAMETERS
__SUPERCLASS     : 
__DYNASTY        : __PARAMETERS
__RELPATH        : 
__PROPERTY_COUNT : 1
__DERIVATION     : {}
__SERVER         : 
__NAMESPACE      : 
__PATH           : 
ReturnValue      : 0
PSComputerName   : 

重要的是要查找ReturnValue : 0,这意味着成功。如果你得到ReturnValue : 1603,那很可能意味着你的Powershell提示符没有提升权限(以管理员身份运行)。 (完整的ReturnValues列表在此处有记录)


6
好的,找到了返回值列表 - http://msdn.microsoft.com/zh-cn/library/aa390890(v=vs.85).aspx - peter
19
谢谢,谢谢,谢谢。虽然这些SDK对我的电脑没有特别的伤害,但我真的很讨厌,非常非常讨厌被强迫安装它们。 - rawpower
8
数以十亿计。另外,哇,你应该看看Windows Phone的列表。用火烧掉它。 - CAD bloke
4
希望我能多次点赞。我不得不在五台不同的电脑上运行VS2013社区版。 - dub stylee
1
有趣的是,即使我收到了0的返回值,广告SDK仍然在扩展列表中列出?我如何验证SDK已被卸载?顺便说一句,其他扩展如“Visual F#”也是如此。 - Andreas
显示剩余6条评论

53

Total Uninstaller是一个简单的UI工具,用于移除“Microsoft Advertising SDK”和类似的软件。


5
这是我在过去几年里第三次查找这个问题,而这个答案是新的。我喜欢这个专门解决一个问题的UI应用程序,它完美地解决了这个问题。 - wigy
2
这个方法对我有效,而这个页面上被接受的答案却没有。 - JDiMatteo
2
虽然 Duncan 的回答是针对该问题的,但 Total Uninstaller 在删除 VS 安装期间强制添加的其他插件方面更加出色。 - Eric Labashosky

16

Duncan Smith提供的PowerShell解决方案非常好。但是,在VS2013的情况下,如果您拥有Visual Studio安装的iso镜像,如果您导航到packages\AdsSDK10文件夹,您会找到两个文件,

MSAdvertisingServiceExtension.msi
Win8_1AdSDK.msi

如果你右键点击它们,你可以选择卸载选项,这将移除 Windows 8.1 的 pubCenter 集成和广告 SDK。


6
完成卸载操作可能需要从 %LocalAppData%\Microsoft\VisualStudio\12.0\Extensions(适用于VS 2013)删除 extensions.*.cache 文件。 - SergeyT
如果您没有准备好ISO文件,您可以在C:\ ProgramData \ Package Cache中找到其设置文件。如果您不知道文件名,可以从注册表中的GUID(在HKEY_CLASSES_ROOT \ Installer的某个位置)中找到它。 - Maurice Gilden
由于某种原因,我没有要卸载的东西。只需删除缓存文件就足以解决我的问题。 - Gabriel GM

6
对于VS 2012、2013(以及2015-我强烈怀疑当前趋势是否会回归到2010的高级定制选项)中提供的所有其他的预装软件,只需安装Revo Uninstaller(有一个完全功能齐备的免费试用),并在其选项中启用“显示系统组件”,就可以轻松愉快地卸载它们。

一些集成组件可能会拒绝被删除-但如果您确定要删除它们,只需右键单击它们并选择“强制卸载”,就可以了。其中最令人反感的组件,特别是那些在VS中“卸载”按钮被禁用(灰色)的扩展程序,可以完全放心地移除-它们甚至会警告是否有其他东西依赖它们,因此不必担心。


为什么要踩这个答案?它和被接受的答案一样,但是使用了一个安全的GUI界面——不过,我与Revo Uninstaller没有任何关联。 - Nikola Bogdanović

5

您使用的广告SDK版本不支持卸载操作。请先安装最新的广告SDK更新,然后在“程序和功能”中会出现可用的卸载程序。


4

分享我的首选方法。我还想删除其他一些扩展(如Windows Phone工具和F#)。

https://dev59.com/o2Eh5IYBdhLWcg3wvFfY#28050106

卸载程序的直接链接http://totaluninstaller.codeplex.com/

您可以根据需要进行配置,以删除更多或更少。

编辑:@Max实际上发布了这个分支版本。这是基于文件的设置,并带有命令行界面。我使用它来脚本化清理作为Visual Studio安装后的步骤。


1
这不基本上就和@Max早先的回答一样吗? - Jeroen
哦,原来它们是同一个工具。@max链接的那个有图形用户界面,而原始版本(我提供的那个)则完全基于命令行和配置文件。实际上,我更喜欢命令行版本。从我提供的页面: 更新于2015年3月7日:tsasioglu为我的小工具提供了漂亮的WPF UI。对于一些人来说,它可能比命令行更舒适。 - Forge

0

我通过从此页面下载的安装程序解决了这个问题: https://visualstudiogallery.msdn.microsoft.com/site/search?query=Advertising&f%5B0%5D.Value=Advertising&f%5B0%5D.Type=SearchText&ac=2

请确保以管理员身份运行msi文件,并在主界面页面中选择“删除”。 在继续之前,我还必须将卸载程序指向我最初使用的msi文件(呵呵)。

编辑:使用这些安装程序后,广告Pubcenter扩展仍然保留安装。我尝试了TotalUninstaller的命令行版本,它可以很好地工作(最初我尝试了UI版本,它留下了一些无法卸载的东西)。

我在这里提出的大多数方法都遇到了问题,可能是因为我的特定设置,我在我们公司网络上的虚拟机上。通过“程序和功能”控制面板卸载失败,并显示错误,说找不到安装程序msi。 Duncan Smart的powershell答案会无限运行(直到我停止它约15分钟左右),所以我不确定它是否有效,但它花费的时间太长了,我放弃等待它。 Total卸载程序给我与通过控制面板卸载相同的错误。我还在我们的某个网络驱动器上跟踪到了一个安装程序msi文件,但它抱怨说已经安装了更新版本。一些搜索结果显示visualstudiogallery网站,我可以从中下载允许我卸载的安装程序。


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