在Visual Studio 2010新建的项目到2012里打开会要求修改PlatformToolset的值,从v100改成v110。若是这个项目须要进版本管理(VCS,如git, svn),这将形成一点小麻烦。两头要么忽略这个变动,要么互相覆盖。git
最近实验了一种方案,能够保持项目在这两种环境下一致。只须要新建一个内容以下的属性表(.props文件):svn
1 <?xml version="1.0" encoding="utf-8"?> 2 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 3 <ImportGroup Label="PropertySheets" /> 4 <PropertyGroup Label="UserMacros" /> 5 <PropertyGroup> 6 <PlatformToolset Condition="'$(DefaultPlatformToolset)' != ''">$(DefaultPlatformToolset)</PlatformToolset> 7 </PropertyGroup> 8 <ItemDefinitionGroup /> 9 <ItemGroup /> 10 </Project>
而后在vc的属性管理器中为项目添加这个使用它便可。测试
因为DefaultPlatformToolset变量在2010中没有,因此须要用Condition区别一下。ui
目前只测试了2010和2012的兼容,估计2013也能兼容,谁有环境麻烦测试一下留言告知。spa