HelloWin.obj : error LNK2019:無法解析的外部符号 [email protected],該符号在函數 "long __stdcallWndProc(struct HWND__ *,unsigned int,unsigned int,long)"([email protected]@[email protected]@[email protected])中被引用
D:\MyProgramTest\Hellowin\Debug\Hellowin.exe : fatal errorLNK1120: 1個無法解析的外部指令
解決辦法:
(1)加上#pragma comment(lib,"winmm.lib")
=================================================================
error LNK2019:無法解析的外部符号 _main,該符号在函數 ___tmainCRTStartup中被引用
這個問題表明你建立的是一個main類型函數(控制台程式),而你的程式中有視窗程式,顯然是個win32函數
解決方法:
項目-屬性-連結器-系統-子系統-控制台(/SUBSYSTEM:CONSOLE)
改為:項目-屬性-連結器-系統-子系統-視窗(/SUBSYSTEM:WINDOWS)
error LNK2019: 無法解析的外部符号 [email protected],該符号在函數 ___tmainCRTStartup 中被引用
解決方法:
項目-屬性-連結器-系統-子系統-視窗(/SUBSYSTEM:WINDOWS)
改為:項目-屬性-連結器-系統-子系統-控制台(/SUBSYSTEM:CONSOLE)
=================================================================
INK :fatal error LNK1104:無法打開檔案“C:/Program.obj”
看看 工程屬性 ---- 連結 --- 輸入 -- 附加依賴項 ......
要使用全路徑要用雙引号把路徑框起來~~這裡我要使用
"C:/ProgramFiles/vc6/VC98/LIB/d3dx9.lib"
要注意的是兩個項目之間是要用空格分開的,注意别打成中文的空格了
=================================================================
fatal error LNK1169: 找到一個或多個多重定義的符号
申明全局變量,全局函數一定要在cpp中申明
其他類引用該全局變量就include該cpp的h檔案
然後extern一下就好了,否則容易出現該重複定義錯誤
這個"容易"是如何解釋的呢?
例如A.h中如果申明了全局變量intGlobal;
在B.h中include"A.h"
extern int Global;
則你include A.h相當于把A.h中全局變量的申明也include進來了,編譯器就會認為是重複定義,是以全局變量和函數申明一定要在cpp中
當.h檔案裡有函數實作時
VS2005編譯器報此錯誤。
解決方法:
1.在.h裡的函數聲明前加inline。
2.将全局變量放到.CPP檔案中聲明。