为什么OpenGL在运行一段时间后会跑出CResourceException啊?该如何解决啊?
在两个静态控件里同时用OpenGL 绘图,
其中一个是静态里
void CWaveDisplay::OnPaint()
{

CPaintDC dc( this );
GetClientRect( &mCtrlRect );
SwapBuffers(dc.m_ps.hdc); wglMakeCurrent(NULL,NULL);
HWND hWnd = this->GetSafeHwnd();    
         HDC hDC = ::GetDC(hWnd);
wglMakeCurrent(NULL,NULL);
wglMakeCurrent(hDC,this->m_hGLContext); glLoadIdentity();
glClearColor(0,0,0,1); //清屏
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); DrawWave();   //绘图程序 wglMakeCurrent(NULL,NULL);
::ReleaseDC(hWnd,hDC);
}
另一个是
void CMyDisplayWave::OnTimer(UINT_PTR nIDEvent)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
wglMakeCurrent(NULL,NULL);
HWND hWnd = this->GetSafeHwnd();    
    HDC hDC = ::GetDC(hWnd);
wglMakeCurrent(NULL,NULL);
wglMakeCurrent(hDC,this->m_hGLContext);
DrawGrid();   // 绘图程序
DrawScale();  // 绘图程序
ShowState();  // 绘图程序
DrawWave();   // 绘图程序
Invalidate(FALSE); wglMakeCurrent(NULL,NULL);
::ReleaseDC(hWnd,hDC);
CStatic::OnTimer(nIDEvent);
}运行一段时间后就会抛出MedicalSoftware.exe 中的 0x7c812a5b 处最可能的异常: Microsoft C++ 异常: 内存位置 0x000e7118 处的 CResourceException。
Warning: Uncaught exception in WindowProc (returning 0).
如何解决啊?