2012-09-27 45 views
1

我嘗試在靜態庫把主(WinMain函數):_tWinMain在靜態庫LNK2019

#include <tchar.h> 
#include <Windows.h> 

int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, 
LPTSTR lpCmdLine, int nCmdShow) {...} 

但我得到:

MSVCRTD.lib(crtexew.obj) : error LNK2019: unresolved external symbol [email protected] referenced in function ___tmainCRTStartup 

我試圖建立的 「統一」,併爲「多-字節」。

我試圖寫沒有 「_t」(和LPSTR)。

我試着寫的extern 「C」。

連接標誌包括/SUBSYSTEM:WINDOWS和我的靜態庫

我知道,這是可能的,因爲它是在像SDL,SFML等圖書館做

+1

你需要聲明它爲'extern「C」'。我不知道這是否足夠,但它是必要的(從檢查名稱錯誤)。如果你想讓你的庫支持Unicode編譯爲Unicode。 –

回答

0

您的問題是,在lib中的函數被調用_ tWinMain

叫它的WinMain,你是好去。

+0

謝謝!現在('extern「C」int APIENTRY WinMain')編譯「Unicode」和「多字節」模式。 – Ivan