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

            文章均收錄自他人博客,但不喜標題前加-[轉貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評論 - 661, 引用 - 0
            數據加載中……

            自己創建 minidump

            以前曾寫過一個 bugslayer.dll 的介紹. 在程序出錯時將調用棧寫到文件. 覺得不錯. 后來開始用 windbg. 知道了 userdump. 知道了如何調試 dump... 才知道程序崩潰的時候寫 dump 文件其實可以獲取比調用棧多得多的信息

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

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

            #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.
            這里用到了一個 api SetUnhandledExceptionFilter(), 如果不明白可以搜一下 msdn.
            運行例子程序出錯退出之后, 就得到了 c:\\user.dmp. 可以用 windbg 等調試器來分析了

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

             

            posted on 2009-10-21 18:50 肥仔 閱讀(1132) 評論(0)  編輯 收藏 引用 所屬分類: 調試

            精品综合久久久久久97| 国产一区二区精品久久岳| 国产午夜精品久久久久免费视| 大美女久久久久久j久久| 久久精品无码一区二区三区免费| 午夜精品久久久久久久无码| 久久亚洲中文字幕精品有坂深雪 | 亚洲精品高清一二区久久| 亚洲中文字幕无码久久综合网| 久久青青草原国产精品免费| 久久人人爽人人爽人人片AV东京热| 成人久久精品一区二区三区| 青青久久精品国产免费看| 国产精品久久久久久吹潮| 四虎国产精品免费久久| 国产精品久久久久一区二区三区 | 久久青草国产精品一区| 久久亚洲精品成人无码网站| 99久久综合国产精品二区| 99精品国产在热久久无毒不卡| 99久久免费国产精品特黄| 久久最新免费视频| 伊人久久大香线焦综合四虎| 久久久久亚洲AV无码专区体验| 亚洲人成网站999久久久综合| 99精品伊人久久久大香线蕉| 狠狠久久亚洲欧美专区| .精品久久久麻豆国产精品| 日日噜噜夜夜狠狠久久丁香五月 | 婷婷伊人久久大香线蕉AV| 亚洲精品综合久久| 理论片午午伦夜理片久久| 久久久噜噜噜久久| 久久男人AV资源网站| 欧美日韩精品久久久免费观看| 国产亚洲美女精品久久久| 久久综合久久性久99毛片| 久久久网中文字幕| 久久亚洲精品无码aⅴ大香| 久久久久久伊人高潮影院| 伊人久久久AV老熟妇色|