Здравствуйте
Есть задумка сделать несколько комплектов окон MDI в пределах одного приложения, которые должны все быть child-ами общего окна и показываться по очереди.
Вроде бы легко создаются и работают несколько штук, но проблема возникает даже с одним, когда я пытаюсь сделать его child-ом
Вот это я пишу в InitInstance
// (CMainWnd :public CFrameWnd)
pMain=(CMainWnd*) RUNTIME_CLASS(CMainWnd)->CreateObject();
pMain->LoadFrame(IDR_MAINFRAME);
pMain->ShowWindow(m_nCmdShow); // То что будет основным окном
CMDIFrameWnd* pFrame = new CMainFrame;
m_pMainWnd = m_pMainWnd1= pFrame;
if (!pFrame->LoadFrame(IDR_MAINFRAME,WS_VISIBLE)) // <------
return FALSE;
pFrame->ShowWindow(m_nCmdShow);
pFrame->UpdateWindow();
А вот это в OnFileNew
CMainFrame* pFrame = STATIC_DOWNCAST(CMainFrame, m_pMainWnd);
CRuntimeClass* pCFrame=RUNTIME_CLASS(CChildFrmOpen);
pFrame->CreateNewChild(pCFrame, IDR_FBTYPE, m_hMDIMenu, m_hMDIAccel);
В таком варианте все работает, появляется 2 независимых окна, одно из которых нормально работает с MDI
Но как только пытаюсь в строчке отмеченной "<----" написать
if (!pFrame->LoadFrame(IDR_MAINFRAME,WS_VISIBLE|WS_CHILD,pMain))
прога вылетает на 3-ей строчке OnFileNew (первые две проходят нормально, pFrame и pCFrame ненулевые)
с access violation
Как поправить?