当我构建项目并运行游戏时,我总是会收到此错误。
Unhandled exception at 0x76fb2073 in Screen.exe: 0xC0000005: Access violation writing location 0x00000338 or sometimes 0x00000000.
当我调试此错误时,我可以看到free.c源文件。
.....
else // __active_heap == __SYSTEM_HEAP
#endif /* _WIN64 */
{
retval = HeapFree(_crtheap, 0, pBlock);
**if (retval == 0) // Here, error occured**
{
errno = _get_errno_from_oserr(GetLastError());
}
}
}
...
当我跟踪此调试路径时,我发现screen.cpp文件中此行发生错误。
if(FAILED(D3DXLoadMeshFromX(szName, D3DXMESH_SYSTEMMEM,
m_pd3dDevice, &pAdjacencyBuffer,
&pD3DXMtrlBuffer, NULL, &pMesh->dwNumMaterial,
&pMesh->pMesh)))
我无法知道为什么在我运行此游戏时始终会出现此错误。
需要你的帮助!
哦,是的。
我忘记了一件事。
当我按下按键-F5运行项目时,无论是全屏幕还是窗口模式,游戏运行良好。
仅当我按Ctrl + F5时,才会发生错误。
答案 0 :(得分:-2)
我自己解决了这个问题。 我将我的文件构建为调试文件。 然后它运作良好。