VSIX安装程序扩展无法安装在任何当前已安装的产品上。

3

我尝试在离线的Visual Studio 2017社区版中安装objc-syntax-highlighting.vsix。然而,我未能成功解决问题。我从https://github.com/Microsoft/WinObjC/releases下载了扩展包,并尝试安装2017年12月发布的0.2预览版。

2/21/2018 11:58:55 AM - Microsoft VSIX Installer 
2/21/2018 11:58:55 AM - -------------------------------------------
2/21/2018 11:58:55 AM - vsixinstaller.exe version:
2/21/2018 11:58:55 AM - 15.5.99+g87f89a485e
2/21/2018 11:58:55 AM - -------------------------------------------
2/21/2018 11:58:55 AM - Command line parameters:
2/21/2018 11:58:55 AM - C:\Program Files (x86)\Microsoft Visual Studio\Installer\resources\app\ServiceHub\Services\Microsoft.VisualStudio.Setup.Service\VSIXInstaller.exe,C:\Users\lenovo\AppData\Local\Temp\Rar$DIa10400.20842\objc-syntax-highlighting.vsix
2/21/2018 11:58:55 AM - -------------------------------------------
2/21/2018 11:58:55 AM - Microsoft VSIX Installer
2/21/2018 11:58:55 AM - -------------------------------------------
2/21/2018 11:58:58 AM - Initializing Install...
2/21/2018 11:58:58 AM - Extension Details...
2/21/2018 11:58:58 AM -     Identifier         : VSIX..9c35fff1-f084-44c1-a38e-68c707163aa2
2/21/2018 11:58:58 AM -     Name               : Objective-C Language Service
2/21/2018 11:58:58 AM -     Author             : Microsoft
2/21/2018 11:58:58 AM -     Version            : 1.5
2/21/2018 11:58:58 AM -     Description        : This package contains Objective-C language service components such as syntax higlighting etc
2/21/2018 11:58:58 AM -     Locale             : en-US
2/21/2018 11:58:58 AM -     MoreInfoURL        : 
2/21/2018 11:58:58 AM -     InstalledByMSI     : False
2/21/2018 11:58:58 AM -     SupportedFrameworkVersionRange : [4.5,)
2/21/2018 11:58:58 AM - 
2/21/2018 11:58:58 AM -     SignatureState     : Unsigned
2/21/2018 11:58:58 AM -     Supported Products : 
2/21/2018 11:58:58 AM -         Microsoft.VisualStudio.Community
2/21/2018 11:58:58 AM -             Version : [12.0,15.0)
2/21/2018 11:58:58 AM -         Microsoft.VisualStudio.Premium
2/21/2018 11:58:58 AM -             Version : [12.0,15.0)
2/21/2018 11:58:58 AM -         Microsoft.VisualStudio.Pro
2/21/2018 11:58:58 AM -             Version : [12.0,15.0)
2/21/2018 11:58:58 AM -         Microsoft.VisualStudio.Ultimate
2/21/2018 11:58:58 AM -             Version : [12.0,15.0)
2/21/2018 11:58:58 AM -         Microsoft.VisualStudio.Enterprise
2/21/2018 11:58:58 AM -             Version : [12.0,15.0)
2/21/2018 11:58:58 AM - 
2/21/2018 11:58:58 AM -     References         : 
2/21/2018 11:58:58 AM - Signature Details...
2/21/2018 11:58:58 AM -     Extension is not signed.
2/21/2018 11:58:58 AM - 
2/21/2018 11:58:58 AM - Searching for applicable products...
2/21/2018 11:58:58 AM - Found installed product - Global Location
2/21/2018 11:58:58 AM - Found installed product - Visual Studio Community 2017
2/21/2018 11:58:58 AM - VSIXInstaller.NoApplicableSKUsException: This extension is not installable on any currently installed products.
at VSIXInstaller.App.GetInstallableData(String vsixPath, Boolean isRepairSupported, IEnumerable`1& skuData)
at VSIXInstaller.App.Initialize(Boolean isRepairSupported)
at VSIXInstaller.App.Initialize()
at System.Threading.Tasks.Task`1.InnerInvoke()
at System.Threading.Tasks.Task.Execute()

有人能帮我解决这个问题吗?


安装 objc-language-services-VS2017.vsix。 - magicandre1981
你尝试过使用 objc-language-services-VS2017.vsix 吗? - magicandre1981
@magicandre1981 很抱歉回复晚了,它运行良好。感谢您的答案。 - PvDev
好的,我已经将其发布为答案,以便您可以接受它 - magicandre1981
3个回答

4

从您提供的日志文件来看,您的计算机上安装了VS2017 Community,并且我们可以在日志文件的后半部分看到这一点。从日志的中间部分,我们可以看到此扩展支持VS2012和VS2015社区/旗舰版/高级版/专业版/企业版。因此,您会收到以下错误消息:

此扩展无法安装到任何当前安装的产品上。

解决方案是简单地下载适用于VS2017 Community的扩展版本。

但是,如果这不能解决问题,这里有一个类似问题的解决方案

上述解决方案的要点如下:

  • 原来,.vsix 扩展名只是一个 .zip 文件。
  • 将扩展名从 .vsix 改为 .zip
  • 在文件夹中找到名为 extension.vsixmanifest 的文件,并在文本编辑器(如记事本)中打开它。
  • 使用 Ctrl + F 查找“Supported Products”部分。
  • 添加以下内容:
    <VisualStudio Version="15.0"> <!-- VS2017 -->
       <Edition>Community</Edition>
       <Edition>Ultimate</Edition>
       <Edition>Premium</Edition>
       <Edition>Pro</Edition>
    </VisualStudio>
  • 保存并关闭文件。
  • 将扩展名从 .zip 改回 .vsix
  • 双击运行。

1
很棒的解决方案 +1。我只是想补充一下,在我需要编辑的 .vsix 文件中,条目位于 <Installation> 部分,并遵循如 <InstallationTarget Version="10.0" Id="Microsoft.VisualStudio.Ultimate" /> 的格式。我确认这种语法可以成功安装。 - SQLServerSteve

3
您使用了错误的扩展名。安装 objc-language-services-VS2017.vsix,该扩展支持 VS2015 和 Visual Studio 2017。

1

该软件包只能在VS 2015及更早版本中安装,请向作者索取更新


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