coredll.dll+0x0002006c 的Data Abort问题原因

今天调试evc程序,总是出现几个莫名奇妙的错误如下:

Data Abort: Thread=8795c908 Proc=80becdf0 'OnLine.exe'
AKY=00000801 PC=03fa006c(coredll.dll+0x0002006c) RA=50616548(???+0x50616548) BVA=18332421 FSR=00000001
FMD_OEMIoControl::Not supported IOCtl : 0x10303FF
FMD_OEMIoControl::Not supported IOCtl : 0x10303FF

或者

Data Abort: Thread=866593e4 Proc=80becd00 'ONLINE.EXE'
AKY=00000401 PC=03fa006c(coredll.dll+0x0002006c) RA=50616548(???+0x50616548) BVA=162f2021 FSR=00000001
Assertion Failed: OnLine: File wincore.cpp, Line 1152
                                                     Data Abort: Thread=8795c908 Proc=80becd00 'ONLINE.EXE'
AKY=00000401 PC=03f9fb04(coredll.dll+0x0001fb04) RA=160bf4d8(ONLINE.EXE+0x000af4d8) BVA=2a3b14e9 FSR=00000001
FMD_OEMIoControl::Not supported IOCtl : 0x10303FF
Data Abort: Thread=8795c908 Proc=80becd00 'ONLINE.EXE'
AKY=00000401 PC=03f9fb04(coredll.dll+0x0001fb04) RA=160bf4d8(ONLINE.EXE+0x000af4d8) BVA=2a3b14e9 FSR=00000001
Data Abort: Thread=8795c908 Proc=80becd00 'ONLINE.EXE'
AKY=00000401 PC=03f9fb04(coredll.dll+0x0001fb04) RA=160bf4d8(ONLINE.EXE+0x000af4d8) BVA=2a3b14e9 FSR=00000001
FMD_OEMIoControl::Not supported IOCtl : 0x10303FF

查看coredll.map,

 0001:0001e52c       HeapCreate                 1001f52c f   coredll_ALL:heap.obj
 0001:0001e668       Int_HeapCreate             1001f668 f   coredll_ALL:heap.obj
 0001:0001e6c8       CeHeapCreate               1001f6c8 f   coredll_ALL:heap.obj
 0001:0001ebf4       HeapReAlloc                1001fbf4 f   coredll_ALL:heap.obj
 0001:0001ec14       HeapAlloc                  1001fc14 f   coredll_ALL:heap.obj
 0001:0001ec34       HeapAllocTrace             1001fc34 f   coredll_ALL:heap.obj
 0001:0001ec88       Int_HeapAlloc              1001fc88 f   coredll_ALL:heap.obj
 0001:0001eee8       HeapFree                   1001fee8 f   coredll_ALL:heap.obj
 0001:0001ef08       Int_HeapFree               1001ff08 f   coredll_ALL:heap.obj
 0001:0001f0e0       HeapSize                   100200e0 f   coredll_ALL:heap.obj
 0001:0001f100       Int_HeapSize               10020100 f   coredll_ALL:heap.obj

发现coredll.dll+0x0002006c对应的函数为: Int_HeapFree ,堆资源释放问题,

coredll.dll+0x0001fb04对应的函数为: CeHeapCreate,堆资源创建问题。

追踪程序发现:plastSaveTime = new char[mea_TotalNumber*7+14],在初始化时mea_TotalNumber =0,

导致实际申请容量与想要使用的不一致,这样操作plastSaveTime 时,操作到别的堆空间了,导致释放别的堆资源出错。

 

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值