我正在尝试调用CWnd类的函数GetParent()。每次都会抛出一个异常。我正在从一个工作线程调用函数。
这是导致异常的行: CWnd* parent = this->GetParent();
我也尝试过"GetParent()->PostMessage(........);",但仍然抛出异常。
我在CDialog中使用此方法。
我注意到CWnd成员m_hWnd有时是0x00000000或0x00000001。在另一台计算机上,我没有得到这个异常。是项目设置中的问题还是我的代码中的问题?
发布于 2013-02-19 21:08:05
您会收到一个断言,而不是一个异常。
以下是VS2010的实现:
ASSERT(::IsWindow(m_hWnd)); return CWnd::FromHandle(::GetParent(m_hWnd));你的m_hWnd不是一个窗口...
https://stackoverflow.com/questions/14957470
复制相似问题