【发布时间】:2013-03-27 19:36:20
【问题描述】:
当我尝试使用 Rastertek DirectX 11 教程之一时出现问题。
- 我把
const bool fullscreen value改成了false,这样程序就可以在窗口模式下运行了 - 我将窗口样式从
CLIPPINGWINDOW更改为OVERLAPPEDWINDOW
它工作正常,只是程序在窗口被销毁时抛出异常:
Unhandled exception at 0x779715ee in FrustumCulling.exe: 0xC0000005: Access violation reading location 0xfeeeff5e.
教程 16,http://www.rastertek.com/dx11tut16.html
我所做的唯一修改是:
在 graphicsclass.h
中const bool FULL_SCREEN = true //false;
和
SystemClass::InitializeWindows
{
...
m_hwnd = CreateWindowEx(WS_EX_APPWINDOW, m_applicationName, m_applicationName,
WS_OVERLAPPEDWINDOW,
posX, posY, screenWidth, screenHeight, NULL, NULL, m_hinstance, NULL);
...
}
【问题讨论】:
-
需要更多详细信息,例如您正在学习哪个教程,如来自rastertek 的教程编号。
-
这个错误发生在哪一行?可能是您尝试使用已发布的 com 对象(例如在清理方法中)?
-
在 swapChain->Release();发生此错误的行。
-
你的代码真的有“const bool FULL_SCREEN = true //false;”吗?因为这不会编译,因为您已经注释掉了终止分号,除非它与下一行组合成一个有效的语句(这可能会破坏很多)。我认为这更可能不是您将线路更改为的字面意思,而是认为我会提到它以防万一......
标签: c++ directx directx-11