让vs2012运行vs2010插件的方法

时间:2022-09-07 13:05:19

原文转载,图文并茂,当你用vs2012却安装不了vs2010的插件的时候有用。

If there are VS2010 extensions you miss when running in VS11, you most likely can edit the extension metadata and it’ll install and run fine.

Here’s an example – one of my favorite VS2010 extensions is PowerConsole which lets you do VS automation in PowerShell.

Unfortunately, if you download and try to ‘run’ the vsix file (it’s just a zip file with some specific metadata files included and an extension for VS to register 让vs2012运行vs2010插件的方法 with a machine with only VS11 on it, you’ll get:

让vs2012运行vs2010插件的方法

The install log is pretty specific:

4/11/2012 6:57:35 PM – Microsoft VSIX Installer
4/11/2012 6:57:35 PM – ——————————————-
4/11/2012 6:57:36 PM – Initializing Install…
4/11/2012 6:57:36 PM – Extension Details…
4/11/2012 6:57:36 PM -     Identifier      : c0dc615b-6157-4f7f-83fd-90101c4d07d5
4/11/2012 6:57:36 PM -     Name            : PowerConsole
4/11/2012 6:57:36 PM -     Author          : Microsoft
4/11/2012 6:57:36 PM -     Version         : 1.0
4/11/2012 6:57:36 PM -     Description     : An extensible PowerShell command window for Visual Studio.
4/11/2012 6:57:36 PM -     Locale          : en-US
4/11/2012 6:57:36 PM -     MoreInfoURL     : r
e4/11/2012 6:57:36 PM -     InstalledByMSI  : False
4/11/2012 6:57:36 PM -     SupportedFrameworkVersionRange : [4.0]
4/11/2012 6:57:36 PM – 
4/11/2012 6:57:39 PM -     Supported Products : 
4/11/2012 6:57:39 PM -         Microsoft.VisualStudio.Pro
4/11/2012 6:57:39 PM -             Version : [10.0]
4/11/2012 6:57:39 PM – 
4/11/2012 6:57:39 PM -     References      : 
4/11/2012 6:57:39 PM – 
4/11/2012 6:57:39 PM – Searching for applicable products…
4/11/2012 6:57:39 PM – Found installed product – Microsoft Visual Studio 11 Ultimate Beta
4/11/2012 6:57:39 PM – Found installed product – Microsoft Visual Studio 11 Premium Beta
4/11/2012 6:57:39 PM – Found installed product – Microsoft Visual Studio 11 Professional Beta
4/11/2012 6:57:39 PM – Found installed product – Microsoft Visual Studio 11 LightSwitch Beta
4/11/2012 6:57:39 PM – Found installed product – Microsoft Visual Studio 11 Shell (Integrated) Beta
4/11/2012 6:57:39 PM – Found installed product – Installed Globally
4/11/2012 6:57:39 PM – Found installed product – ssms
4/11/2012 6:57:39 PM – VSIXInstaller.NoApplicableSKUsException: This extension is not installable on any currently installed products.
   at VSIXInstaller.App.InitializeInstall()
   at VSIXInstaller.App.OnStartup(StartupEventArgs e)

To fix, we can edit the extension.vsixmanifest file in the root of the archive

With 7zip, I just had to right-click on the vsix file and do ‘Open Archive’:

让vs2012运行vs2010插件的方法

Then I could right-click and Edit the file from inside there:

让vs2012运行vs2010插件的方法

WIth the file open in an editor, add VS11 as supported by adding these lines (copy-paste of existing VisualStudio node for 10.0 and change 10.0 to 11.0)

让vs2012运行vs2010插件的方法 

Now you can ‘run’ the vsix:

让vs2012运行vs2010插件的方法

让vs2012运行vs2010插件的方法