程序编译了一个MAP文件。
运行后,程序崩溃,我在崩溃的时候用SEH记录下了崩溃的数据:
其中
pe->ExceptionRecord->ExceptionCode(错误代码)为0xc000008c
pe->ExceptionRecord->ExceptionAddress(地址)为0x7C812A6B不过这个错误的地址0x7C812A6B,我在MAP文件里是找不到的,我很奇怪为什么是这样一个地址
这个地址应该是怎么洋一个地址???

解决方案 »

  1.   

    内存基地址是默认的0X4000啊MAP部分内容如下:
     Timestamp is 4d46679d (Mon Jan 31 15:41:17 2011) Preferred load address is 00400000 Start         Length     Name                   Class
     0001:00000000 000390c2H .textbss                DATA
     0002:00000000 0007515bH .text                   CODE
     0002:00075160 00001dcaH .text$x                 CODE
     0002:00076f30 0000175fH .text$yc                CODE
     0002:00078690 00001209H .text$yd                CODE
     0003:00000000 00000104H .CRT$XCA                DATA
      

  2.   

    按错误的代码应该是STATUS_ARRAY_BOUNDS_EXCEEDED 越界操作了,
    0x7XXXX的地址应该是系统DLL的地址空间吧,估计是调用的参数传入非法值、无效指针之类的引起的
      

  3.   

    http://blog.csdn.net/yang3yang/archive/2009/07/19/4360636.aspx
    vc调试:使用MAP文件快速定位程序崩溃代码行