選取一個vs2013的解決方案文件.sln,以文本文檔方式打開它。(我用的是sublime text 2,我認爲是款代替記事本的不錯工具,性感而小巧。有人從Notapad+轉爲用它,自有其價值吧。)工具
在文件開頭咱們能夠看到一些關鍵信息:spa
Format Version 12.003d
VisualStudioVersion = 12.0.21005.1orm
MinimumVisualStudioVersion = 10.0.40219.1ip
代表該.sln生成的格式版本是12.00(vs2013),vs版本是12.0.21005.1(vs2013),最小兼容版本是10.0.40219.1(vs2010)。文檔
那也許把該解決方案改爲10.0.40219.1以上都行吧?get
【版本區別】it
像我這樣的新手請注意這裏,Version 12.00意味着版本爲vs2013而非vs2012,本文末最後已總結了vs版本中的該現象。下一步中改Format Version 爲11.00而非10.00io
(2)修改.sln文件。編譯
(3)從新打開
用VS2010打開修改後的解決方案文件,成功打開。
(4)編譯
我想起vs2012和vs2010的平臺工具集不一致,vs2012是v110,vs2010是v100,vs2013則是v120。我想先不去項目文件裏查看,也許在加載解決方案的時候vs已經重置了平臺工具集?因而嘗試①直接編譯。
編譯失敗,由於結果平臺工具集未重置,本機上沒有vs2013,找不到v120的平臺工具集。同時,注意到,有「項目文件包含ToolsVersion="12.0" 設置……將項目視爲具備ToolsVersion="4.0" 設置」。這彷佛是.Net的工具版本號,不修改的話會自動兼容。
③編譯經過,運行成功。同時,ToolsVersion的版本號是被視爲4.0了。
④去查找對應ToolsVersion的項目文件,修改之。