(在线等......)新建视图失败,求解!
错误信息:MyApp.exe 中的 0x04489f05 (DAO350.DLL) 处未处理的异常: 0xC0000005: 读取位置 0x00000030 时发生访问冲突
执行代码如下:
CRuntimeClass* pNewViewClass;
pNewViewClass = RUNTIME_CLASS(CFunctionView);
CFrameWnd* pFrame = new CFrameWnd;
CCreateContext context;
context.m_pNewViewClass = pNewViewClass;
context.m_pCurrentDoc = GetActiveView()-> GetDocument();
pFrame-> Create(NULL, NULL, WS_CHILD|WS_VISIBLE|WS_CLIPCHILDREN|WS_CLIPSIBLINGS, CRect(0, 0, 0, 0), this, NULL, 0, &context);
其中 CFunctionView 是一个CFormView 类。
执行到最后一句 pFrame-> Create时出错,究竟会是哪些方面的缘故呢?
CMyApp theApp; 在MyApp.cpp中已声明了的。
[解决办法]
1、看看pFrame是否是有效指针;
2、f11调试进入create函数,看具体是哪行引起的;
3、这种错误一般是指针指向了非法地址或数组下标越界引起的;
4、CRect(0, 0, 0, 0),是啥意思?
[解决办法]
书上的有可能有错,窗口大小为0应该不对。