在配置環境的時候我做了以下三步
1.包含目錄改成了:C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Include;$(IncludePath)
2.庫目錄改成了:C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Lib\x86;$(LibraryPath);D:\Microsoft Visual Studio\VC98\Lib
3.在附加依賴項里添加了:
d3dx9d.lib
d3d9.lib
d3dx11.lib
dxerr.lib
dxguid.lib
winmm.lib
comctl32.lib
然后程式沒有提示語法錯誤,遂除錯
1>------ 已啟動生成: 專案: d3dpro, 配置: Debug Win32 ------
1>d3dFramework.obj : error LNK2019: 無法決議的外部符號 __Init_thread_header,該符號在函式 "int __cdecl d3d9MessageLoop(bool (__cdecl*)(float,struct IDirect3DDevice9 *),struct IDirect3DDevice9 *)" (?d3d9MessageLoop@@YAHP6A_NMPAUIDirect3DDevice9@@@Z0@Z) 中被參考
1>d3dFramework.obj : error LNK2019: 無法決議的外部符號 __Init_thread_footer,該符號在函式 "int __cdecl d3d9MessageLoop(bool (__cdecl*)(float,struct IDirect3DDevice9 *),struct IDirect3DDevice9 *)" (?d3d9MessageLoop@@YAHP6A_NMPAUIDirect3DDevice9@@@Z0@Z) 中被參考
1>d3dFramework.obj : error LNK2019: 無法決議的外部符號 "int __cdecl d3d9CHeckHardwareVP(struct IDirect3D9 *,enum _D3DDEVTYPE)" (?d3d9CHeckHardwareVP@@YAHPAUIDirect3D9@@W4_D3DDEVTYPE@@@Z),該符號在函式 "bool __cdecl d3d9Initial(struct HINSTANCE__ *,long (__stdcall*)(struct HWND__ *,unsigned int,unsigned int,long),int,int,bool,enum _D3DDEVTYPE,struct IDirect3DDevice9 * *)" (?d3d9Initial@@YA_NPAUHINSTANCE__@@P6GJPAUHWND__@@IIJ@ZHH_NW4_D3DDEVTYPE@@PAPAUIDirect3DDevice9@@@Z) 中被參考
1>d3dFramework.obj : error LNK2019: 無法決議的外部符號 @_RTC_CheckStackVars@8,該符號在函式 "int __cdecl d3d9CheckHardwareVP(struct IDirect3D9 *,enum _D3DDEVTYPE)" (?d3d9CheckHardwareVP@@YAHPAUIDirect3D9@@W4_D3DDEVTYPE@@@Z) 中被參考
1>d3dFramework.obj : error LNK2019: 無法決議的外部符號 @__security_check_cookie@4,該符號在函式 "int __cdecl d3d9CheckHardwareVP(struct IDirect3D9 *,enum _D3DDEVTYPE)" (?d3d9CheckHardwareVP@@YAHPAUIDirect3D9@@W4_D3DDEVTYPE@@@Z) 中被參考
1>d3dFramework.obj : error LNK2019: 無法決議的外部符號 __RTC_CheckEsp,該符號在函式 "int __cdecl d3d9CheckHardwareVP(struct IDirect3D9 *,enum _D3DDEVTYPE)" (?d3d9CheckHardwareVP@@YAHPAUIDirect3D9@@W4_D3DDEVTYPE@@@Z) 中被參考
1>main.obj : error LNK2001: 無法決議的外部符號 __RTC_CheckEsp
1>d3dFramework.obj : error LNK2001: 無法決議的外部符號 __RTC_InitBase
1>main.obj : error LNK2001: 無法決議的外部符號 __RTC_InitBase
1>d3dFramework.obj : error LNK2001: 無法決議的外部符號 __RTC_Shutdown
1>main.obj : error LNK2001: 無法決議的外部符號 __RTC_Shutdown
1>d3dFramework.obj : error LNK2001: 無法決議的外部符號 __Init_thread_epoch
1>d3dFramework.obj : error LNK2019: 無法決議的外部符號 ___security_cookie,該符號在函式 "int __cdecl d3d9CheckHardwareVP(struct IDirect3D9 *,enum _D3DDEVTYPE)" (?d3d9CheckHardwareVP@@YAHPAUIDirect3D9@@W4_D3DDEVTYPE@@@Z) 中被參考
1>D:\visual studio 2017\Projects\d3dpro\Debug\d3dpro.exe : fatal error LNK1120: 10 個無法決議的外部命令
1>已完成生成專案“d3dpro.vcxproj”的操作 - 失敗。
========== 生成: 成功 0 個,失敗 1 個,最新 0 個,跳過 0 個 ==========
請問出現這些無法決議的符號是什么原因呢?是因為少了什么庫檔案還是因為我寫cpp檔案的時候有錯誤?感謝指教!
uj5u.com熱心網友回復:
你上網查一下那些函式需要哪些庫不就好了? 如果是windows的函式msdn一般都有寫依賴那些庫,那些頭檔案的uj5u.com熱心網友回復:
看你這些API不像是windows的函式哦轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/58883.html
標籤:其它游戲引擎
上一篇:手機虛擬鍵盤控制
