• <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 肥仔 閱讀(1142) 評論(0)  編輯 收藏 引用 所屬分類: 調試

            国产精品丝袜久久久久久不卡| 久久发布国产伦子伦精品| 日韩亚洲国产综合久久久| 99久久这里只精品国产免费| 久久棈精品久久久久久噜噜| 久久九九久精品国产| 欧美黑人又粗又大久久久| 久久精品免费网站网| 久久精品亚洲精品国产色婷| 国产成人精品久久亚洲高清不卡 | 亚洲va久久久噜噜噜久久男同 | 亚洲中文字幕伊人久久无码| 一本色道久久综合狠狠躁| 九九热久久免费视频| 久久人人爽人人爽人人片av高请| 久久久久无码专区亚洲av| 99久久中文字幕| 亚洲AV乱码久久精品蜜桃| 亚洲国产成人乱码精品女人久久久不卡 | 伊人久久大香线蕉AV色婷婷色| 亚洲成人精品久久| 久久亚洲中文字幕精品有坂深雪 | 亚洲成色999久久网站| 久久精品国产亚洲AV无码娇色| 亚洲欧美国产精品专区久久| 日本福利片国产午夜久久| 久久无码人妻一区二区三区| 久久亚洲日韩看片无码| 热RE99久久精品国产66热| 久久WWW免费人成—看片| segui久久国产精品| 国产福利电影一区二区三区久久久久成人精品综合 | 免费精品99久久国产综合精品| 久久九九精品99国产精品| 亚洲色大成网站www久久九| 久久久午夜精品| 一本一本久久A久久综合精品 | 国产一级做a爰片久久毛片| 国产精品久久久久久吹潮| 国内精品久久人妻互换| 日本久久久精品中文字幕|