我试图调用CWnd类的函数GetParent()。 每次抛出异常。 我正在从一个工作线程中调用该函数。
这是导致异常的行: CWnd * parent = this-> GetParent();
我也试过“GetParent() - > PostMessage(........);”,但仍然会抛出异常。
我在CDialog中使用此方法。
我注意到CWnd成员m_hWnd有时是0x00000000或0x00000001。 在另一台计算机上,我没有得到这个例外。 这是项目设置或我的代码中的问题吗?
答案 0 :(得分:2)
您收到断言而非例外。
以下是VS 2010的实施:
ASSERT(::IsWindow(m_hWnd)); return CWnd::FromHandle(::GetParent(m_hWnd));
你的m_hWnd不是一个窗口......