青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

一動不如一靜

C++博客 首頁 新隨筆 聯系 聚合 管理
  20 Posts :: 0 Stories :: 10 Comments :: 0 Trackbacks

有時候我們的程序crash了,會出現一個crash界面提示我們在什么位置中斷了。我們如何根據這個中斷地址找到對應的行號呢?

要想達到這樣的目的,首先要進行一些工程屬性的配置。

c/c++->常規->調試信息格式->程序數據庫
c/c++->優化->優化->禁用
鏈接器->調試->生成調試信息->是
            ->生成映射文件->是
            ->映射文件名稱->$(OutDir)/$(ProjectName).map
            ->映射導出->是
            ->映射行->是

1    int main (int argc, char* argv[])
2   {
3       char * p = 0;
4       *p = 'c';
5       return 0;
6 }

當執行程序的時候,顯示“test1.exe中的0x0040100e處未處理的異常:0xc000005:寫入位置0x00000000時發生訪問沖突”


這個時候來看一下map文件。首先看到的是參考的加載地址: Preferred load address is 00400000

Timestamp is 4639462c (Thu May 03 10:17:16 2007)

 Preferred load address is 00400000

 Start         Length     Name                   Class
 0001:00000000 00003b58H .text                   CODE
 0002:00000000 000000c4H .idata$5                DATA
 0002:000000d0 00000c40H .rdata                  DATA
 0002:00000d10 00000048H .rdata$debug            DATA
 0002:00000d60 00000008H .rdata$sxdata           DATA
 0002:00000d68 00000004H .rtc$IAA                DATA
 0002:00000d6c 00000004H .rtc$IZZ                DATA
 0002:00000d70 00000004H .rtc$TAA                DATA
 0002:00000d74 00000004H .rtc$TZZ                DATA
 0002:00000d78 00000014H .idata$2                DATA
 0002:00000d8c 00000014H .idata$3                DATA
 0002:00000da0 000000c4H .idata$4                DATA
 0002:00000e64 00000366H .idata$6                DATA
 0002:000011ca 00000000H .edata                  DATA
 0003:00000000 00000004H .CRT$XCA                DATA
 0003:00000004 00000004H .CRT$XCAA               DATA
 0003:00000008 00000004H .CRT$XCZ                DATA
 0003:0000000c 00000004H .CRT$XIA                DATA
 0003:00000010 00000008H .CRT$XIC                DATA
 0003:00000018 00000004H .CRT$XIZ                DATA
 0003:0000001c 00000004H .CRT$XPA                DATA
 0003:00000020 00000004H .CRT$XPZ                DATA
 0003:00000024 00000004H .CRT$XTA                DATA
 0003:00000028 00000004H .CRT$XTZ                DATA
 0003:00000030 00000274H .data                   DATA
 0003:000002c0 00000598H .bss                    DATA

crash地址計算:calculation: crash_address - preferred_load_address - 0x1000
                            0x0040100e -0x00400000-0x1000=0x0000000e

接著在map中查找對應的obj

 Address         Publics by Value              Rva+Base     Lib:Object

 0000:00000000       __except_list              00000000     <absolute>
 0000:00000002       ___safe_se_handler_count   00000002     <absolute>
 0001:00000000       _main                      00401000 f   test1.obj
 0001:00000017       __amsg_exit                00401017 f   LIBC:crt0.obj
 0001:0000003c       _mainCRTStartup            0040103c f   LIBC:crt0.obj
 0001:00000203       ___crtExitProcess          00401203 f   LIBC:crt0dat.obj


最后根據obj和計算的值在map中找第一個小于我們所計算的值的位置

Line numbers for .\release\test1.obj(d:\test\test1\test1\test1.cpp) segment .text

     2 0001:00000000     3 0001:00000004     4 0001:0000000b     5 0001:00000011

然后在.map中查找第一個小于我們所計算的值的位置

所以我們的中斷位置是在第4行

posted on 2007-05-03 10:44 一動不如一靜 閱讀(1593) 評論(3)  編輯 收藏 引用 所屬分類: C++

Feedback

# re: 如何根據crash地址找到對應的行號 2007-08-14 12:45 夢在天涯
這個還是有點專業哦,能不能來一個再詳細點的哦,方首頁讓大家一起學習了!  回復  更多評論
  

# re: 如何根據crash地址找到對應的行號 2008-01-21 10:20 mikey
你這個辦法不太好用啊,比如在程序里面用了個strcpy出錯了,出錯的地址
最后就映射到strcpy.asm里面去了,怎么知道是在主程序的什么地方調用了
strcpy阿  回復  更多評論
  

# re: 如何根據crash地址找到對應的行號 2010-08-19 10:04 等等
查看堆棧不就完了。。。  回復  更多評論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲欧美成人一区二区在线电影 | 欧美jizzhd精品欧美巨大免费| 国产精品一区=区| 亚洲精品视频在线观看网站 | 欧美一区二区三区视频在线| 免费欧美高清视频| 亚洲高清毛片| 免费观看欧美在线视频的网站| 国语精品一区| 国产精品国产精品| 国产精品豆花视频| 国产精品亚洲片夜色在线| 欧美视频在线观看一区| 欧美不卡三区| 久久精品国产久精国产一老狼 | 久久国产福利| 噜噜噜噜噜久久久久久91| 嫩草国产精品入口| 欧美日一区二区三区在线观看国产免| 国产精品yjizz| 国产日本精品| 日韩视频一区二区在线观看| 亚洲网站在线观看| 六月婷婷一区| 在线视频日韩| 久久久xxx| 欧美日韩亚洲三区| 国内揄拍国内精品少妇国语| 日韩视频免费大全中文字幕| 亚洲男女自偷自拍| 免费观看成人鲁鲁鲁鲁鲁视频 | 亚洲高清免费| 日韩亚洲国产欧美| 久久精视频免费在线久久完整在线看| 欧美日韩精品免费观看| 海角社区69精品视频| 99国产精品久久久久老师| 久久天堂精品| 亚洲一区欧美二区| 欧美日本韩国在线| 在线观看成人网| 玖玖综合伊人| 欧美一级久久久| 亚洲国产黄色| 欧美亚洲免费高清在线观看| 欧美日韩精品一本二本三本| 在线成人欧美| 老色批av在线精品| 尤物九九久久国产精品的特点 | 欧美中文字幕第一页| 亚洲精品日韩在线观看| 久久精品国产一区二区三区免费看| 欧美性感一类影片在线播放| 亚洲人成网站在线观看播放| 欧美专区一区二区三区| 一本色道久久综合狠狠躁篇怎么玩 | 久久精品青青大伊人av| 国产精品毛片大码女人| 亚洲精选中文字幕| 欧美韩日一区| 欧美大秀在线观看| 亚洲精品免费在线观看| 亚洲高清在线播放| 欧美精品日韩精品| 亚洲精品日韩一| 亚洲乱码国产乱码精品精| 欧美日韩一区二区在线观看| 亚洲一区不卡| 亚洲一区二区三区免费在线观看| 欧美日韩精品是欧美日韩精品| 99亚洲视频| 亚洲人体1000| 欧美视频在线看| 欧美一区二区三区视频在线观看| 亚洲视频在线观看三级| 国产欧美一区二区视频| 久久综合九色| 欧美jizzhd精品欧美巨大免费| 亚洲精品色图| 亚洲视频香蕉人妖| 国内视频一区| 亚洲黄一区二区| 国产精品国产a级| 亚洲欧美一区二区精品久久久| 亚洲一区二区3| 影音先锋亚洲电影| 日韩亚洲视频| 好看不卡的中文字幕| 欧美国产一区视频在线观看| 欧美韩国一区| 欧美一区=区| 麻豆av一区二区三区| 亚洲视频一区| 久久久久久夜| 亚洲永久免费av| 乱码第一页成人| 欧美在线播放一区| 欧美日韩中文字幕精品| 国产精品进线69影院| 久久精品成人一区二区三区蜜臀| 久久国产一二区| 亚洲区欧美区| 亚洲欧美一区二区三区极速播放| 精品999网站| 日韩亚洲精品视频| 国产自产高清不卡| 亚洲激情在线| 一区二区亚洲精品国产| 亚洲小视频在线| 亚洲日本在线视频观看| 亚洲免费视频观看| 国产精品99久久不卡二区| 久久精品在线播放| 午夜亚洲性色福利视频| 美脚丝袜一区二区三区在线观看| 欧美日韩在线三级| 欧美成人一区二区| 国产一区二区高清视频| 亚洲激情在线| 在线不卡a资源高清| 亚洲一区在线观看视频 | 你懂的亚洲视频| 久久精品理论片| 国产精品久久综合| 亚洲国产成人精品久久久国产成人一区| 国产伦精品一区二区三区视频孕妇 | 欧美精品色综合| 久久久天天操| 国产精品一区二区在线观看不卡| 亚洲精选大片| 亚洲免费观看高清完整版在线观看熊 | 亚洲欧美日韩另类| 欧美日韩精品不卡| 亚洲美女电影在线| 99精品欧美一区二区蜜桃免费| 久久人体大胆视频| 老**午夜毛片一区二区三区| 国产一区二区三区日韩| 午夜精品一区二区三区在线播放| 亚洲一区二区三区乱码aⅴ| 欧美va亚洲va日韩∨a综合色| 免费毛片一区二区三区久久久| 黄色成人av在线| 噜噜噜躁狠狠躁狠狠精品视频| 欧美粗暴jizz性欧美20| 黄色日韩网站| 久久久久久免费| 欧美成人精品在线观看| 91久久夜色精品国产九色| 美日韩在线观看| 欧美激情在线| 亚洲裸体在线观看| 亚洲毛片一区二区| 亚洲一区二区三区乱码aⅴ蜜桃女 亚洲一区二区三区乱码aⅴ | 亚洲国产精品999| 亚洲国产日韩欧美| 久色成人在线| 先锋a资源在线看亚洲| 国产精品护士白丝一区av| 欧美精品123区| 国产精品亚洲不卡a| 亚洲男人天堂2024| 午夜精品久久久久久久久久久久| 欧美视频一区二区三区…| 在线综合亚洲| 久久福利精品| 亚洲精品亚洲人成人网| 国产精品国产三级国产专区53 | 国产精品久久久久毛片软件 | 欧美高清不卡| 亚洲天堂成人| 国内精品免费在线观看| 久久综合福利| 亚洲一二三区精品| 欧美18av| 欧美一区二区三区精品| 亚洲欧洲综合另类| 亚洲午夜羞羞片| 狂野欧美一区| 亚洲免费人成在线视频观看| 国外成人网址| 欧美三级电影大全| 久久精品av麻豆的观看方式| 亚洲人体大胆视频| 久久久久久久久综合| 亚洲线精品一区二区三区八戒| 国模 一区 二区 三区| 欧美日韩一区视频| 另类专区欧美制服同性| 欧美一区激情| 一本色道久久88亚洲综合88| 国产一区二区福利| 国产精品亚洲产品| 欧美日韩精品综合在线| 麻豆精品国产91久久久久久| 一区二区三区导航| 日韩视频第一页| 亚洲激情在线| 日韩午夜电影在线观看| 国产一区导航|