在VS2012平台運作項目時遇到該問題,
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnL1YTNzEDMwcTM0ITMxgTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
或者遇到這樣的提示
_MSC_VER這個相當于做了宏的檢測 _MSC_VER 定義編譯器的版本。下面是一些編譯器版本的_MSC_VER值:
MS VC++ 14.0 _MSC_VER = 1900 vs2015
MS VC++ 12.0 _MSC_VER = 1800 vs2013的編譯器他的平台是v120
MS VC++ 11.0 _MSC_VER = 1700 vs2012的編譯器他的平台是v110
MS VC++ 10.0 _MSC_VER = 1600 Visual C++ 2010
MS VC++ 9.0 _MSC_VER = 1500 Visual C++ 2008
MS VC++ 8.0 _MSC_VER = 1400 Visual C++ 2005
MS VC++ 7.1 _MSC_VER = 1310
MS VC++ 7.0 _MSC_VER = 1300
MS VC++ 6.0 _MSC_VER = 1200
MS VC++ 5.0 _MSC_VER = 1100
error LNK2038: 檢測到“_MSC_VER”的不比對項: 值“1600”不比對值“1700”(main.obj 中)
原因:由于你使用了vs2012,工作集選擇了1700也就是vs2012的,緻使msvc不相容!
方法:在項目(解決方案資料總管或者屬性管理器裡都行)右鍵屬性-配置屬性-正常中,平台工具集選用為合适平台即可,比如上面的就是要選擇成2010的 v10版本,注意光選了還沒有用
注意一個工程裡面會有幾個解決方案的時候,有解決方案需要改而有的不要自己可以檢視
還需要重新編譯,重新編譯在生成菜單重新生成裡面
另外若使用了高版本的編譯工具,但是無法找到低版本的平台工具集,可以安裝下低版本軟體。