郁闷 mfc90d.dll!CTreeCtrl::DeleteAllItems()报内存访问冲突

czb czb 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
vc2008的编译器,原来代码在32位操作系统上运行,一切正常。移植到64位的win7上,编译为64位的EXE文件,结果运行的时候,MFC自身的CTreeCtrl都有问题了。

DEBUG报错文件为afxcmn.inl(vc自带的文件),报错行的内容为
_AFXCMN_INLINE BOOL CTreeCtrl::DeleteAllItems()
{ ASSERT(::IsWindow(m_hWnd)); return (BOOL)::SendMessage(m_hWnd, TVM_DELETEITEM, 0, (LPARAM)TVI_ROOT); }

报错内容为
MultiParentTree.exe 中的 0x3f9a6b40 处未处理的异常: 0xC0000005: 在位置 0x000000003f9a6b40 发生访问冲突

此时的堆栈为
000000003f9a6b40()
user32.dll!0000000076679bd1()
[下面的框架可能不正确和/或缺失,没有为 user32.dll 加载符号]
user32.dll!0000000076676aa8()
user32.dll!000000007666d398()
>mfc90d.dll!CTreeCtrl::DeleteAllItems() 行273 + 0x52 字节 C++
MultiParentTree.exe!CNodeDialog::PopulateCombo() 行157 + 0xa 字节 C++

请各位老鸟指教。
顺便感叹下CSDN的论坛,做得也够烂的。
...全文
评论 3
收藏 已收藏
分享
返回顶部
czb
界面 15,976 成员 115,866 内容