DirectX 11プロジェクトに取り組んでいますが、奇妙なリンクエラーが発生しました。関数D3DX11CreateShaderResourceViewFromFileはLNK2019エラーをスローします。
不足しているライブラリはありますか?d3d11tex.hの宣言に到達できますが、プログラムが実装を見つけられません。
私は何が欠けていますか?私が必要なすべてのものを含めて参照したようです...さらに、私が述べたように、私は宣言に達することができます。
エラー:
エラー1エラーLNK2019:関数 "public:__thiscall Texture2d :: Texture2d(struct ID3D11Device *、wchar_t *)"(?? 0Texture2d @@ QAE @ PAUID3D11Device @@ PA_W @ Z)Z:\Yearで参照される未解決の外部シンボル_D3DX11CreateShaderResourceViewFromFileW@ 24 4 \ Coursework \ Coursework \ Coursework\Texture2d.objコースワーク
これがコード(.cpp)で、インクルードが含まれています。
#include <d3d11.h>
#include <d3dx11.h>
Texture2d::Texture2d(ID3D11Device* device, WCHAR* fileName)
{
D3DX11CreateShaderResourceViewFromFile(device, fileName, NULL, NULL, &m_texture, NULL);
}
ライブラリディレクトリ: C:\ Program Files(x86)\ Microsoft DirectX SDK(2010年6月)\ Lib \ x86
ディレクトリを含める: C:\ Program Files(x86)\ Microsoft DirectX SDK(2010年6月)\ IncludeC:\ Program Files(x86)\ Microsoft DirectX SDK(2010年6月)\ Samples \ C ++ \ Effects11 \ Inc
編集! ライブラリのリンクを表示するのを忘れましたが、誰かがそれを見ることさえせずに解決策を思いつきました。確かに、d3dx11.libがありませんでした。
#pragma comment(lib, "d3d11.lib")
#pragma comment(lib, "d3dcompiler.lib")
#pragma comment(lib, "dxerr.lib")
#pragma comment(lib, "Effects11.lib")