0x01A686F0 处有未经处理的异常(在 五金上色软件.exe 中): 0xC000041D: 用户回调期间遇到未经处理的异常。。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了0x01A686F0 处有未经处理的异常(在 五金上色软件.exe 中): 0xC000041D: 用户回调期间遇到未经处理的异常。。相关的知识,希望对你有一定的参考价值。

CPntList* plist = &theApp.LPointlist;
_point_node node;
plist->AddTail(node);

很普通的调用Clist链表,却频繁出错

技术分享图片

在ASSERT_VALID那里过不去,出现断言

技术分享图片

这个地方已经很久没改过什么了。进行问题排查:

试了其他的Clist却都是正常的。就是这个theApp.LPointlist老是不行。

最后实在不行了,在定义的地方把theApp.LPointlist换了个位置

本来是这样的

CPntList LPointlist;//左平台-创建双链表-存放点
CPntList pointlist_ins;//用于存放插入的新链表
CPntList pointlist_temp;//用于暂时存放临时的

换成

CPntList pointlist_ins;//用于存放插入的新链表
CPntList LPointlist;//左平台-创建双链表-存放点
CPntList pointlist_temp;//用于暂时存放临时的
CPntList AfterList;//存放偏移点的链表

却发现可以了。不会出现断言了。

跟位置有关,那就看看上下的什么变量,往上一看果然有问题。

CDialog* pDialog[7];

这个变量是最近有操作过的。加了一个窗口,但是数组定义的数量却没有改大。因此出现数组越界。

要注意的是,在Release版本下,是不会报这个错误的。

 








以上是关于0x01A686F0 处有未经处理的异常(在 五金上色软件.exe 中): 0xC000041D: 用户回调期间遇到未经处理的异常。。的主要内容,如果未能解决你的问题,请参考以下文章

0x00BF56C9 处有未经处理的异常(在 ConsoleApplication26.exe 中):

devenv.exe 中的 0x756c3e28 处有未经处理的异常

c++中的 0x004114a4 处有未经处理的异常: 0xC0000005: 写入位置 0xcccccccc 时发生访

处有未经处理的异常:0xC0000005:写入位置0x00EFA000时发生访问冲突.

异常处理--“System.BadImageFormatException”类型的未经处理的异常在 DataTest.exe 中发生

c++堆栈溢出问题?