vs2010 編譯多個project問題

weixin_34391854發表於2017-04-23

       使用VS2010 編譯從vc6.0複製過來的原project檔案原始碼。提示錯誤非常多。感覺無從下手。非常多原始的函式和API引數都提示型別

錯誤或者不相容。

百度一下。第一個問題:

 vc6.0使用ASIIC字元。而VS2010預設選項使用unicode. 在project上面右鍵屬性,把預設字符集改動為

"No Set",例如以下圖所看到的


  又一次編譯整個解決方式,非常多原先型別不匹配的錯誤消失。如:char*和char陣列無法轉換。

TCHAR 和 LPCWSTR 無法轉換等。

  第二個問題,一個解決方式裡面,建立了多個project。一直提示無法找到外部符號LNK2019錯誤。

百度非常多,都是說標頭檔案未定義等等。

事實上。應該

把握一個原則:那就是,多個project,僅僅有一個是主project,將來會編譯成exe檔案。其它project都是輔助的。僅僅能編譯為.lib或者dll。

然後在連線的時候包括

進來。我的低階錯誤時,多個project檔案,上圖的Configuration Type 都是Application(.exe). LNK2019錯誤的原因裡面:一部分是輔助的project檔案找不到

main(console)或winmain(windows),主project檔案中面找不到連線的其它project檔案函式。把輔助project檔案的 Configuration Type 改動為.lib或dll 就能夠了。

再把linker 選項設定一下就能夠了。


 

相關文章