• <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>
            posts - 23,  comments - 20,  trackbacks - 0
            由于昨天太晚 沒有看完 今天繼續看  繼續轉
            原帖地址
            http://blog.csdn.net/vagrxie/archive/2009/07/31/4398721.aspx
            今天要轉的就是  SEH + MiniDump  實現既Dump文件  又讓程序繼續運行

             1 #include "stdafx.h"
             2 #include <windows.h>
             3 #include <Dbghelp.h>
             4 using namespace std;
             5 
             6 #pragma auto_inline (off)
             7 #pragma comment( lib, "DbgHelp" )
             8 
             9 // 為了程序的簡潔和集中關注關心的東西,按示例程序的慣例忽略錯誤檢查,實際使用時請注意
            10 
            11 LONG WINAPI MyUnhandledExceptionFilter(struct _EXCEPTION_POINTERS* ExceptionInfo    )
            12 {
            13     HANDLE lhDumpFile = CreateFile(_T("DumpFile.dmp"), GENERIC_WRITE, 0, NULL, CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL ,NULL);
            14     MINIDUMP_EXCEPTION_INFORMATION loExceptionInfo;
            15     loExceptionInfo.ExceptionPointers = ExceptionInfo;
            16     loExceptionInfo.ThreadId = GetCurrentThreadId();
            17     loExceptionInfo.ClientPointers = TRUE;
            18     MiniDumpWriteDump(GetCurrentProcess(), GetCurrentProcessId(),lhDumpFile, MiniDumpNormal, &loExceptionInfo, NULL, NULL);
            19     CloseHandle(lhDumpFile);
            20     return EXCEPTION_EXECUTE_HANDLER;
            21 }
            22 
            23 void Fun2()
            24 {
            25     __try
            26     {
            27         static bool b = false;
            28         if(!b)
            29         {
            30             b = true;
            31             int *= NULL;
            32             *= 0;
            33         }
            34         else
            35         {
            36             MessageBox(NULL, _T("Here"), _T(""), MB_OK);
            37         }
            38     }
            39     __except(MyUnhandledExceptionFilter(GetExceptionInformation()))
            40     {
            41     }
            42 }
            43 
            44 void Fun()
            45 {
            46     Fun2();
            47 }
            48 
            49 int main()
            50 {
            51     Fun();
            52     Fun();  //用于顯示MessageBox
            53     return 1;
            54 }
            55 
            56 
            最后轉一句話
            Make it right before you make it faster. Keep it right when you make it faster. Make it clear before you make it faster. Do not sacrifice clarity for small gains in efficiency.
            posted on 2009-08-28 09:16 李佳 閱讀(595) 評論(0)  編輯 收藏 引用 所屬分類: 調試技巧
            <2009年8月>
            2627282930311
            2345678
            9101112131415
            16171819202122
            23242526272829
            303112345

            常用鏈接

            留言簿

            隨筆分類

            隨筆檔案

            文章檔案

            相冊

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            亚洲人成精品久久久久 | 欧美午夜精品久久久久久浪潮| 精品无码久久久久久午夜| 丰满少妇高潮惨叫久久久| 国产精品九九久久免费视频 | 无码人妻少妇久久中文字幕蜜桃| 亚洲av成人无码久久精品| 欧美激情精品久久久久| 亚洲国产成人精品久久久国产成人一区二区三区综 | 久久婷婷色香五月综合激情| 久久99精品久久久久久久不卡| 久久久久人妻精品一区三寸蜜桃| 精品久久久一二三区| 精品人妻伦一二三区久久 | 亚洲国产精品一区二区久久| yy6080久久| 亚洲综合婷婷久久| 久久夜色精品国产噜噜噜亚洲AV| 久久福利片| 久久99精品国产99久久6男男| 亚洲精品高清一二区久久| 2021国产成人精品久久| 久久精品欧美日韩精品| 国产色综合久久无码有码| 亚洲午夜久久影院| 国产成人久久精品激情 | 久久99国产综合精品免费| 久久大香萑太香蕉av| 久久综合色区| 精品久久久久中文字| 99久久精品免费看国产免费| 精品久久香蕉国产线看观看亚洲| 久久久久亚洲AV无码麻豆| 麻豆一区二区99久久久久| 久久久亚洲AV波多野结衣| 思思久久好好热精品国产| 看全色黄大色大片免费久久久| 情人伊人久久综合亚洲| 久久精品一区二区三区不卡| 色综合久久久久网| 国产精品欧美久久久久天天影视|