CMainFrame* pFrame=(CMainFrame* )pFrameClass->CreateObject();
ASSERT(pFrame->IsKindOf(RUNTIME_CLASS(CMainFrame)));
m_pMainWnd=pFrame; CCreateContext context;
context.m_pCurrentFrame = pFrame;
context.m_pCurrentDoc = NULL;
context.m_pNewViewClass = RUNTIME_CLASS(CCdmaMapTestView);
context.m_pNewDocTemplate = NULL; if (!pFrame->LoadFrame(IDR_MAINFRAME,
WS_OVERLAPPEDWINDOW | FWS_ADDTOTITLE,
NULL, &context))//此处抛异常 debug assertion failed
//file: afxwin2.inl
//line:96
解决方案 »
- 请问WM_PAINT的值是多少啊??
- 如何静默卸载程序
- UDP服务器如何设计
- CListCtrl 获取选中记录的第一个字段的值
- 哪位有兴趣开发一个国外股票期货分析软件的数据接口?
- 请问如果知道一个网页地址, 如http://www.xxxx.com/1.html, 如何读取该网页源代码? 只用ATL写, 不用MFC
- 有没有API能够获得当前进程的Base Address?
- 要实现逆推方程, 请各位英雄指教
- 看过《Windows程序设计》或《MFC windows程序设计》的朋友请进!
- INTERNER选项被禁止,怎么办?
- 用AfxBeginThread怎样开启线程效果比较好!
- 关于三次握手的一点疑惑
pFrame都还没出现那..
pFrame->LoadFrame(IDR_MAINFRAME,
WS_OVERLAPPEDWINDOW | FWS_ADDTOTITLE,
NULL, &context))//这句就是产生窗体的啊
//在它之前窗体当然没有产生
//即使把第四个参数换为NULL,同样抛异常
//产生窗体这步就抛异常 这怎么解决啊
CFrameWnd::LoadFrame ==> CFrameWnd::Create ==>CWnd::CreateEx ==>::CreateWindowEx ==>
触发WM_CREATE 最后CMainFrame::OnCreate
//file: afxwin2.inl
的96行是{ ASSERT(::IsWindow(m_hWnd)); ::GetWindowRect(m_hWnd, lpRect); }不知道你的是不是这样的信息?这样就更奇怪了.
一般是if (!pFrame->LoadFrame(IDR_MAINFRAME,WS_OVERLAPPEDWINDOW | FWS_ADDTOTITLE,
NULL, &context))//此处抛异常 debug assertion failed
return FALSE;
然后再m_pMainWnd=pFrame;
怎么会调用GetWindowRect?难道是你在创建子窗体?
你给信息不够多,方便的话,给我的信箱里发一份:[email protected]