2013-02-03 24 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所说的那样。