Visual studio extensions 如何为多个Visual Studio版本创建单个VSIX扩展?
需要创建通用VSIX扩展,该扩展需要支持Visual Studio 2010至2017的所有版本 为了达到上述要求,我参考了以下链接 在这种情况下,他们要求将packagego添加到Visual Studio C Items | Extensibility | VSPackage节点,选择Visual Studio包模板,并使用VSIX项目中的Visual Studio包模板将其命名为MyPackage.cs到VSIX项目中,但我的Visual Studio没有Visual Studio包项模板。它只有Visual Studio AsyncPackage模板。我在下面添加了我的visual studio详细信息 VisualStudio旧版本只有“VisualStudio包”选项,而且他们建议现在使用AsyncPackage为多个VisualStudio版本创建一个公共包。请在这里查找详细信息 如果我在VSIX项目中添加了VisualStudioAsyncPackage,那么在VSIX项目编译过程中,我将面临以下编译错误 请提出任何解决方案,否则请提出任何其他方式来实现我的要求Visual studio extensions 如何为多个Visual Studio版本创建单个VSIX扩展?,visual-studio-extensions,vsix,Visual Studio Extensions,Vsix,需要创建通用VSIX扩展,该扩展需要支持Visual Studio 2010至2017的所有版本 为了达到上述要求,我参考了以下链接 在这种情况下,他们要求将packagego添加到Visual Studio C Items | Extensibility | VSPackage节点,选择Visual Studio包模板,并使用VSIX项目中的Visual Studio包模板将其命名为MyPackage.cs到VSIX项目中,但我的Visual Studio没有Visual Studio包项模板
注意:我已经使用VS2012创建了一个项目,该项目在vsixmanifest文件中具有Visual Studio支持的版本。它仅在VS2012安装的机器中工作。请就此提出建议 我是MSDN杂志文章的作者。它是在VisualStudio包项目模板被VisualStudio异步包项目模板替换之前编写的 即使您可以从旧的VS版本中获取模板,也不可能使用单个VSIX从VS2010到VS2017,因为清单有三个不同的版本,如本文所述。最多,您可以将目标设定在2012年到2017年之间 但考虑到微软推动在VS 2017 15.8和未来VS 2019 16.0和16.1中至少对自动加载包使用异步包,最好的未来证明方法是为VS 2010-2013开发一个非异步包,为VS 2015-2017开发另一个异步包。因为可能您的软件包今天不需要自动加载异步软件包将不需要,但可能将来它需要自动加载,然后您将被迫使用异步软件包,或者可能Microsoft在VS 2019 16.2中决定,即使是非自动加载的软件包也必须是异步的 注意:您可以在VS 2013和更高版本的示例上尝试异步包,但如果您还需要针对VS 2010和2012,则不值得
一句话:将您的时间集中于在两个包项目之间尽可能多地重用代码,您必须创建这两个包项目以实现目标VS 2010-2019。将目标环境设置为您希望包含的所有版本的数组的可能重复。@SunnyPatel注:我已使用VS2012创建了一个项目,其中包含Visual Studio支持的版本vsixmanifest文件。它仅在VS2012安装的机器中工作。请就此提出建议。