讓vc2010的項目在vc2012也能直接使用,而沒必要修改PlatformToolSet

在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

相關文章
相關標籤/搜索