無法解析的外部符號 _tWinMain@16

無法解析的外部符號 _tinMain@16

編譯出下如下錯誤:

error LNK2019: 無法解析的外部符號 _WinMain@16,該符號在函數 ___tmainCRTStartup 中被引用 

error LNK1120: 1 個無法解析的外部命令 出這個錯誤可能有以下幾個原因:

解決方案一

新建項目是控制檯應用程序而程序通過的是WinMian(及windows入口函數)因爲新建項目的時候選擇的是控制檯應用程序,控制檯應用程序的入口是main。而在.CPP文件中提供的是windows入口函數WinMian。

解決辦法:

(1)項目->屬性->配置屬性->C/C++ ->預處理器 中的【預處理器定義】 刪除“_CONSOLE” 添加 “ _WINDOWS”

(2)項目->屬性->配置屬性->連接器->系統中的【子系統】設置爲Windows(/SUBSYSTEM:WINDOWS)

(3)生成->重新生成

解決方案二

WinMain的UNICODE版和ANSI版不匹配爲了支持UNICODE,C運行庫對WinMain其實區分了UNICODE版和ANSI版。對UNICODE版的程序,C運行庫調用wWinMain,而對於ANSI版的則調用WinMain。

解決辦法:

(1)將代碼中的 int APIENTRY _tWinMain 替換爲 INT WINAPI wWinMain (INT WINAPI wWinMain 替換爲 int APIENTRY _tWinMain )

(2)生成->重新生成解決方案

發佈了8 篇原創文章 · 獲贊 22 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章