テクスチャを Gluint (unsigned int) に読み込もうとしています。私は次のことをしました:
material[materialNum].texture = SOIL_load_OGL_texture((fileLocation + "/" + mtlBufferStr).c_str(), SOIL_LOAD_AUTO, SOIL_CREATE_NEW_ID, SOIL_FLAG_MIPMAPS | SOIL_FLAG_INVERT_Y | SOIL_FLAG_NTSC_SAFE_RGB | SOIL_FLAG_COMPRESS_TO_DXT);
このコードはデバッグ モードで動作します。しかし、リリースモードでは、「_file.c」で実行時エラーが発生し(作成していません)、実行時エラーは次のとおりです。
Win32.exe の 0x771A8E19 (ntdll.dll) で未処理の例外: 0xC0000005: アクセス違反の書き込み場所 0x00000014
この実行時エラーがリリース モードでのみ表示される理由とその解決方法を教えてください。
編集: Gluint を使用せずに、ファイルのパスを含むプログラムの完全なコードを追加します。それでも同じ問題:
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR szCmdLine, int iCmdShow )
{
AllocConsole();
HANDLE handle_out = GetStdHandle(STD_OUTPUT_HANDLE);
int hCrt = _open_osfhandle((long) handle_out, _O_TEXT);
FILE* hf_out = _fdopen(hCrt, "w");
setvbuf(hf_out, NULL, _IONBF, 1);
*stdout = *hf_out;
SOIL_load_OGL_texture("models/havoc/tex_0007_1.dds", SOIL_LOAD_AUTO, SOIL_CREATE_NEW_ID, SOIL_FLAG_MIPMAPS | SOIL_FLAG_INVERT_Y | SOIL_FLAG_NTSC_SAFE_RGB | SOIL_FLAG_COMPRESS_TO_DXT);
}