2013-02-03 28 views
2

在編譯的時候我收到以下錯誤:如何解決Direct3DCreate9的LNK2019問題?

RAT_RendererDX9.obj : error LNK2019: unresolved external symbol [email protected] referenced in function "public: void __thiscall RAT_ENGINE::RAT_RendererDX9::Init(class RAT_ENGINE::RAT_WindowManager *)" ([email protected][email protected][email protected]@[email protected]@@Z)

唯一的地方,我用Direct3DCreate9是我其中有下面的代碼的渲染Init()功能:

void RAT_RendererDX9::Init(RAT_WindowManager* argWMan) 
{ 
    wMan = argWMan; 

    g_pD3D = (LPDIRECT3D9)Direct3DCreate9(D3D_SDK_VERSION); 

    D3DPRESENT_PARAMETERS d3dpp; 
    ZeroMemory(&d3dpp, sizeof(d3dpp)); 
    d3dpp.Windowed = TRUE; 
    d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD; 
    d3dpp.BackBufferFormat = D3DFMT_UNKNOWN; 

    g_pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, 
           D3DCREATE_SOFTWARE_VERTEXPROCESSING, 
           &d3dpp, &g_pd3dDevice); 
} 

哪裏這個錯誤來自我如何解決它?
我已經嘗試了LNK2019的其他答案,但他們沒有解決我的問題。

+0

您需要鏈接到directx庫。 –

+5

將d3d9.lib添加到鏈接程序的其他依賴項。 –

+0

我已經使用'#include ',它也在示例文件中使用,但不起作用。 – Friso

回答

9

我必須將d3d9.lib文件添加到鏈接器的附加依賴項中,就像GSerg所說的那樣。