ocx里面一对话框,继承于一个自己写的对话框美观类(继承于CDialog),打开时崩溃,然后跟踪发现下面代码错误
else if((pWnd->GetStyle()&0x0000000f)==0||(pWnd->GetStyle()&0x0000000f)==1)//普通按钮(默认下压按钮)
{
CWnd *pGroupBox=new CXPButton;
pGroupBox->SubclassWindow(pWnd->m_hWnd);
}
另外
wincore.cpp line331代码是
ASSERT(FromHandlePermanent(hWndNew) == NULL);
百度,网上说控件重复,涉及控件变量,发现果然是已定义CButton m_bok
删除变量或者加上pWnd->IsWindowVisible()避免上述重绘代码皆可避免错误,估计是控件关联的类不一致
参考:http://bbs.csdn.net/topics/190137345