关闭程序出现崩溃(exe 已触发了一个断点及未加载ucrtbased.pdb)
在把AddPage功能添加到outlookbar的程序中后,当关闭程序,提示以上错误。
LRESULT CMyOfficeView::HandleInitDialog(WPARAM wParam, LPARAM lParam) { LRESULT lRes = CBCGPFormView::HandleInitDialog(wParam, lParam); UpdateData(FALSE); CRect rectPropSheet; m_wndPropSheetPlaceHolder.GetWindowRect(rectPropSheet); ScreenToClient(rectPropSheet); m_wndPropSheet.EnableVisualManagerStyle(); m_wndPropSheet.EnableLayout(); m_wndPropSheet.m_bIsAutoDestroy = FALSE; //m_wndPropSheet.AddPage(&m_Page1); m_wndPropSheet.AddPage(&m_Page2); //m_wndPropSheet.AddPage(&m_Page3); //m_wndPropSheet.AddPage(&m_Page4); //m_wndPropSheet.AddPage(&m_Page5); if (!m_wndPropSheet.Create(this, WS_TABSTOP | WS_CHILD | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_VISIBLE, 0)) { TRACE0("Cannot create property sheet control\n"); return 0; } m_wndPropSheet.SetWindowPos(NULL, rectPropSheet.left, rectPropSheet.top, rectPropSheet.Width(), rectPropSheet.Height(), SWP_NOZORDER | SWP_NOACTIVATE); CBCGPStaticLayout* pLayout = (CBCGPStaticLayout*)GetLayout(); if (pLayout != NULL) { /*pLayout->AddAnchor(IDC_BUTTON1, CBCGPStaticLayout::e_MoveTypeHorz, CBCGPStaticLayout::e_SizeTypeNone); pLayout->AddAnchor(IDC_BUTTON2, CBCGPStaticLayout::e_MoveTypeHorz, CBCGPStaticLayout::e_SizeTypeNone); pLayout->AddAnchor(IDC_CHECK1, CBCGPStaticLayout::e_MoveTypeHorz, CBCGPStaticLayout::e_SizeTypeNone); */ pLayout->AddAnchor(m_wndPropSheet.GetSafeHwnd(), CBCGPStaticLayout::e_MoveTypeNone, CBCGPStaticLayout::e_SizeTypeBoth); } return lRes; }
另外单独做了一个空的对话框IDD_PAGE3 把上面用到的page2的IDD 改为IDD_PAGE3后 程序运行,关闭就正常。
再向PAGE3里面放一个控件listctrl后运行 ,关闭也不正常。崩溃跟上面情况一样
也就是这个IDD_PAGE上面一放控件,关闭时程序就崩溃。