如何解决TVM_INSERITEM 返回一个 HTREEITEM,使用时会导致异常
每隔一段时间,我就会从我的 HTREEITEM newItem = (HTREEITEM)SendMessage(m_treeControlHwnd,TVM_INSERTITEM,(LPARAM)(LPTV_INSERTSTRUCTW)&tvIns);
中返回一个 HTREEITEM 值,例如“0xffffffffacf7ed30”。该项目已成功添加到树中。我可以在“0xffffffffacf7ed30”项之后添加另一个项,尽管 comctl32.dll 抛出异常“在 Program.exe 中的 0x00007FFAC1E17897 (comctl32.dll) 处抛出异常:0xC0000005:访问冲突读取位置 0xFFFFFFFFACF7”在继续之前处于调试模式。我可以遍历这些项目并在我的控件中看到“0xffffffffacf7ed30”。但是,如果我尝试从 "0xffffffffacf7ed30" 开始,即使有下一项,HTREEITEM siblingItem = (HTREEITEM)SendMessage(m_treeControlHwnd,TVM_GETNEXTITEM,(WPARAM)TVGN_NEXT,(LPARAM)(HTREEITEM)(treeItem));
也会返回 NULL。知道为什么我的 TVM_INSERITEM 会传回其他树消息似乎不喜欢的 HTREEITEM 吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。