新建MFC文档并引入OCC环境后,在此基础上二次开发时,总是在某次修改代码出错后,出现这种报错,即使是撤回、再打开无BUG版本的备份都还是会有这个报错,网上似乎也没有准确的解答。
于是就抱着试一试的态度自己解决,报错中说是指针访问冲突,本想从根源上看懂OCC提供的这个框架进行修改,但无奈能力有限没找到问题所在

最终找到了这个取巧的办法:
既然报错这个指针冲突了,那我就加一个判断试试呗,于是我在将*pFrame赋值为AfxGetApp()->m_pMainWnd前对AfxGetApp()->m_pMainWnd进行判断,若不存在就return:

运行了一下,还真有用,不过又在另外一个地方出现了异常,再次在这个地方加一个判断:


成功运行!
如果对你有用的话请点赞支持哦,欢迎讨论为什么会出现这个异常~
博主在MFC应用中整合OCC环境进行二次开发时遇到指针访问冲突的问题,即使回滚代码或使用无错误备份也无法避免。通过自我排查,发现在对AfxGetApp()->m_pMainWnd指针赋值前添加条件判断,成功解决了异常。此方法暂时解决了问题,但异常原因仍有待深入理解。欢迎讨论可能的异常原因。

4226

被折叠的 条评论
为什么被折叠?



