vsixmanifest for all: VS 2010, 2012 and 2013

后端 未结 2 1164
暗喜
暗喜 2020-12-03 01:52

I\'m using VSIX Manifest Designer under VS2013. I\'ve added Microsoft.VisualStudio.Pro product identifier and [10.0,13.0) version

相关标签:
2条回答
  • 2020-12-03 02:01

    It is working pretty good (Thanks a lot to Igal), if the VSIX is developed in VS 2012, and installed in VS 2015. However, the reverse is not working (means developed in VS 2015 and try to install in VS 2012) After analyzed Activitylog .xml, i found a work around

    Could not load file or assembly 'Microsoft.VisualStudio.Shell.14.0, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies.

    Workaround I did Remove VisualStudio.Shell.14.0 and Install VisualStudio.Shell.11.0 using Package manager console (Install-Package VSSDK.Shell.11), and installed in VS 2012. Now Working as expected

    0 讨论(0)
  • 2020-12-03 02:17

    What you have is the version 2 VSIX manifest, which is not compatible with Visual Studio 2010. Later Visual Studio versions respect version 1 of the manifest, so in order to support all 3 Visual Studio versions with a single manifest, you'll have to convert it to v1.0 manually (and make sure NOT to edit it with VS2012+, otherwise it will be converted back to v2.0).

    Something like this:

    <?xml version="1.0" encoding="utf-8"?>
    <Vsix xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Version="1.0.0" xmlns="http://schemas.microsoft.com/developer/vsx-schema/2010">
      <Identifier Id="ae98c9e5-8e14-4c92-b45a-c4fd24a49123">
        <Name>MyExtension</Name>
        <Author>whosoever</Author>
        <Version>1.0</Version>
        <Description xml:space="preserve">Your decription.</Description>
        <Locale>1033</Locale>
        <SupportedProducts>
          <VisualStudio Version="10.0">
            <Edition>Pro</Edition>
          </VisualStudio>
          <VisualStudio Version="11.0">
            <Edition>Pro</Edition>
          </VisualStudio>
          <VisualStudio Version="12.0">
            <Edition>Pro</Edition>
          </VisualStudio>
        </SupportedProducts>
        <SupportedFrameworkRuntimeEdition MinVersion="4.0" />
      </Identifier>
      <Content>
        <VsPackage>|%CurrentProject%;PkgdefProjectOutputGroup|</VsPackage>
        <MefComponent>|%CurrentProject%|</MefComponent>
      </Content>
    </Vsix>
    

    You don't have to specify all product editions (called SKUs), Pro is enough, if, say, Ultimate is installed, it will be displayed instead.

    0 讨论(0)
提交回复
热议问题