• <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>

            woaidongmao

            文章均收錄自他人博客,但不喜標(biāo)題前加-[轉(zhuǎn)貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評(píng)論 - 661, 引用 - 0
            數(shù)據(jù)加載中……

            自己創(chuàng)建 minidump

            以前曾寫過一個(gè) bugslayer.dll 的介紹. 在程序出錯(cuò)時(shí)將調(diào)用棧寫到文件. 覺得不錯(cuò). 后來開始用 windbg. 知道了 userdump. 知道了如何調(diào)試 dump... 才知道程序崩潰的時(shí)候?qū)?span lang=EN-US> dump 文件其實(shí)可以獲取比調(diào)用棧多得多的信息

            如果你的程序什么都不干. 那么在程序出錯(cuò)的時(shí)候. drwtsn32.exe 會(huì)寫一個(gè) userdump. drwtsn32 有些缺點(diǎn). 比如只能寫一個(gè) dump 文件. 后面的崩潰寫 dump 文件時(shí)會(huì)覆蓋前面的. win2000 下的 drwtsn32 只能寫舊式的 dump 文件(往往尺寸比較大). 有一篇文章論述的比較清楚:
             http://www.debuginfo.com/articles/ntsdwatson.html

            建議使用 ntsd 代替 drwtsn32. ntsd 的缺點(diǎn)就是需要安裝最新的 windbg. 這是一個(gè)硬傷. 在看了 debuginfo.com 的另一篇文章:
             http://www.debuginfo.com/articles/effminidumps.html
             
            之后, 我選擇的是在程序出錯(cuò)的時(shí)候調(diào)用 api 自己寫 minidump. 克服了 drwtsn32, ntsd 的缺點(diǎn).
            將封裝好的函數(shù)放到了一個(gè)頭文件中, 包含即可. 使用的方法很簡單:

            #include <windows.h>
            #include "minidump.h"
            LONG __stdcall MyUnhandledExceptionFilter(PEXCEPTION_POINTERS pExceptionInfo)
            {
            CreateMiniDump(pExceptionInfo, "c:\\user.dmp");
            return EXCEPTION_EXECUTE_HANDLER;
            }

            void main()
            {
            SetUnhandledExceptionFilter(MyUnhandledExceptionFilter);
            *(int*)0=0; // AV
            }

            這樣就好了. 注意安裝至少 xp 以上的 sdk.
            這里用到了一個(gè) api SetUnhandledExceptionFilter(), 如果不明白可以搜一下 msdn.
            運(yùn)行例子程序出錯(cuò)退出之后, 就得到了 c:\\user.dmp. 可以用 windbg 等調(diào)試器來分析了

            代碼從這里下載 http://nicoster.googlepages.com/minidump.rar

             

            posted on 2009-10-21 18:50 肥仔 閱讀(1145) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 調(diào)試

            伊人久久大香线蕉成人| 久久综合丁香激情久久| 国产成人精品久久| 久久99热狠狠色精品一区| 久久强奷乱码老熟女网站| 中文无码久久精品| 久久精品国产亚洲Aⅴ蜜臀色欲| 久久亚洲日韩看片无码| 久久精品免费观看| 99久久精品国产一区二区| 久久91精品国产91久久户| 久久久亚洲AV波多野结衣| 久久99精品九九九久久婷婷| 久久久久久人妻无码| 亚洲国产综合久久天堂| 久久99精品免费一区二区| 精品一区二区久久| 精品乱码久久久久久久| 亚洲欧美成人综合久久久| 亚洲精品无码久久久久AV麻豆| 国产精品成人99久久久久 | 久久99精品国产| 久久久久亚洲精品无码蜜桃| 欧美亚洲国产精品久久高清| 久久亚洲2019中文字幕| 久久精品国产亚洲5555| 精品人妻伦九区久久AAA片69| 久久久久中文字幕| 91秦先生久久久久久久| 品成人欧美大片久久国产欧美| 91精品国产高清91久久久久久| 国内精品伊人久久久久av一坑| 久久99精品久久久久久动态图| 欧洲人妻丰满av无码久久不卡| 一本色道久久综合亚洲精品| 无码久久精品国产亚洲Av影片 | 国产精品99久久久久久www| 91精品国产综合久久香蕉| 国产一区二区精品久久岳| 久久精品国产一区二区电影| 免费精品国产日韩热久久|