我安装了两个版本的Visual Studio:2013和2015。 我想创建VS扩展(vsix),它将适用于两个版本VS,但如果我调试不同版本,则不会触发Package.Initialize方法:
在VS2015上从VS2013开始调试 - 扩展不工作,方法未调用。
在VS2013上从VS2015开始调试 - 扩展不工作,方法未调用。
在VS2015上从VS2015开始调试 - 扩展工作。
在VS2013上从VS2013开始调试 - 扩展工作。
包装定义包含以下属性: [PackageRegistration(UseManagedResourcesOnly = true)] [InstalledProductRegistration(“#110”,“#112”,“1.0”,IconResourceID = 400)] [的Guid(GuidList.guidVSPackageTest20132PkgString)] [ProvideAutoLoad(UIContextGuids80.SolutionExists)]
在清单安装目标设置为[12.0,14.0]
有什么建议吗?
答案 0 :(得分:0)
要调试特定VS版本的软件包,您需要调整两件事:
1)在项目的Debug属性页面中,选择所需的devenv.exe可执行文件。
2)在.csproj文件中,为步骤#1的devenv.exe选择匹配的VS SDK版本(VS 2015为14.0,VS 2013为12.0):
<PropertyGroup>
...
<VisualStudioVersion>14.0</VisualStudioVersion>
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
...