我有代码:
#include <windows.h>
#include <detours.h>
#include <d3d11.h>
#include <d3dx11.h>
#include <d3dcompiler.h>
#include <xnamath.h>
#include <sstream>
#pragma comment(lib, "detours.lib")
BOOL (WINAPI * TrueSetWindowText)(HWND hWnd, LPCTSTR lpString) = SetWindowText;
TrueSetWindowText 一个指向winapi 函数SetWindowText 的指针。接下来我使用它一切正常。
我决定尝试 Direct3D 功能。添加:
HRESULT (WINAPI * TrueD3DX11CreateShaderResourceViewFromFile)(
ID3D11Device *pDevice,
LPCTSTR pSrcFile,
D3DX11_IMAGE_LOAD_INFO *pLoadInfo,
ID3DX11ThreadPump *pPump,
ID3D11ShaderResourceView **ppShaderResourceView,
HRESULT *pHResult) = D3DX11CreateShaderResourceViewFromFile;
指向D3DX11CreateShaderResourceViewFromFile的指针。当我编译项目时,我得到一个错误。
dllmain.obj : error LNK2001: unresolved external symbol _D3DX11CreateShaderResourceViewFromFileW@24
fatal error LNK1120: 1 unresolved externals
在项目属性VC++目录中,我添加了:
包括目录 C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Include
库目录 C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Lib\x86
有谁知道为什么会出现这个错误?