2012-02-16 8 views
0

アプリケーションは、コードのこれらの行に達する:0xc0000005で:アクセス違反の書き込み場所0x00000000のGame.exeで0x011428b5でアクセス違反の書き込み場所0x00000000の

未処理の例外:

ID3D11ShaderResourceView* tempMeshSRV; 
wstring MediaFilePath = DefaultPath + fileNamePath; 
hr = D3DX11CreateShaderResourceViewFromFile(d3d11Device, MediaFilePath.c_str(), NULL, NULL, &tempMeshSRV, NULL); 

私は次のエラーを取得します。

「wstring MediaFilePath = DefaultPath + fileNamePath;」を追加するまでうまくいきました。ライン。ロードしようとしているリソースは間違いなく正しい場所にあります。

+1

'DefaultPath'と' fileNamePath'の値は何ですか?それらの型は何ですか? – nos

+2

あなたはヌルポインタを持っています。 'D3DX11CreateShaderResourceViewFromFile'に' tempMeshSRV'が割り当てられていると仮定しています。 –

+0

'DefaultPath'オブジェクトが" Content/Models/"に設定されていて、' fileNamePath 'は" image.jpg "であり、画像ファイルが現在存在する正しい場所である" Content/Models/face.jpg "を作成します。 Yes Ed、 'tempMeshSRV'は' D3DX11CreateShaderResourceViewFromFile'に設定されています。私はちょっと混乱しているのですが、それはnullを返していません。 – Jamie

答えて

0

DefaultPathとfileNamePathの型は "wstring"または "const wchar_t *"ですか?それらが "const wchar_t *"の場合、それらを追加することはあなたが望むことをしません。 (2つのポインタ値が追加されます)。

+0

'DefaultPath'と' fileNamePath'はどちらもstd :: wstring型です – Jamie

関連する問題