求助啊 data abort 的问题

ocon   2008-7-15 23:25 楼主
Data Abort: Thread=82927640 Proc=8044c300 'OffLine.exe'
(注:offline.exe为本人写的程序)

详细解释说明一下,那些都是什么东西啊?
还有这些
Data Abort: Thread=82a57bfc Proc=8044c3f0 'OffLine.exe'
AKY=00080001 PC=03f81354(coredll.dll+0x00021354) RA=28438e98(OffLine.exe+0x00428e98) BVA=67657733 FSR=000000f3
Data Abort: Thread=82a57bfc Proc=8044c3f0 'OffLine.exe'
AKY=00080001 PC=03f81354(coredll.dll+0x00021354) RA=28438e98(OffLine.exe+0x00428e98) BVA=67657733 FSR=000000f3
Data Abort: Thread=82a57bfc Proc=8044c3f0 'OffLine.exe'
AKY=00080001 PC=03f81354(coredll.dll+0x00021354) RA=28438e98(OffLine.exe+0x00428e98) BVA=67657733 FSR=000000f3


这些问题怎么解决啊
又遇到的人吗》?帮忙啦!~!~~~~

这些是不是内存方面的问题啊??看 .map 文件?
看过了,感觉不知道是那里的问题,因为在 我的 MAP 文件中 Rva+Base 最大值远远小于 那些,只是大概 0x0001 * * * * * (五位)左右

上网查有人说是函数或子程序中局部变量数组越界付值,
我检查了一遍,暂时还没有发现
还有说是 dll 文件越界了,
我现在不知道怎么办了。

回复评论 (6)

这种问题,在网上search一下,一堆说明啊!

http://www.cnblogs.com/walzer/archive/2008/03/13/909626.html
点赞  2008-7-16 08:31
因为不同系统版本map不一样,根据你的错误,我在Windows Mobile 6.1 的上查到

0001:00021200       HeapSize                   10022200 f   coredll_ALL:heap.obj
0001:00021220       Int_HeapSize               10022220 f   coredll_ALL:heap.obj
0001:00021294       HeapDestroy                10022294 f   coredll_ALL:heap.obj
0001:000212b4       Int_HeapDestroy            100222b4 f   coredll_ALL:heap.obj
0001:000213fc       CompactRegion              100223fc f   coredll_ALL:heap.obj
0001:000214f0       HeapCompact                100224f0 f   coredll_ALL:heap.obj
0001:000215c8       CompactAllHeaps            100225c8 f   coredll_ALL:heap.obj
0001:0002162c       GetProcessHeap             1002262c f   coredll_ALL:heap.obj
0001:00021644       HeapValidate               10022644 f   coredll_ALL:heap.obj

大概位置是Int_HeapDestroy 所以可能和HeapDestroy有关。

对应的OffLine.map 你要直接找了。
点赞  2008-7-16 10:01
请问map文件在哪里找啊??
另外请问 nbcool 你发的这个表是在6.1哪里找到的啊?
谢谢赐教!
点赞  2008-7-22 13:45
map在release目录里有的

另外看FSR,Abort是地址不对齐造成的啊
点赞  2008-7-22 16:18
举例请教个问题,
比如出错的PC指针地址是 00021395.


那么下面两个地址函数应该是哪个啊?
或者说这个地址是开始,还是结束地址?

00021395是落在00021294开始的HeapDestroy这个函数内吗??


0001:00021294      HeapDestroy                10022294 f  coredll_ALL:heap.obj
0001:000212b4      Int_HeapDestroy            100222b4 f  coredll_ALL:heap.obj
点赞  2008-7-23 09:52
感谢大家!!~~
点赞  2008-7-25 21:30
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复