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

            常用鏈接

            留言簿

            隨筆分類

            隨筆檔案

            文章檔案

            相冊

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            精品久久人人做人人爽综合| 亚洲国产成人久久综合碰| 久久综合噜噜激激的五月天| 久久久久99精品成人片欧美| 久久亚洲国产中v天仙www| 久久av高潮av无码av喷吹| 99久久精品免费看国产一区二区三区 | 成人综合伊人五月婷久久| 国产日韩久久免费影院| 亚洲AV无码久久精品蜜桃| 国产91久久综合| 久久久久人妻一区二区三区vr | 久久亚洲国产最新网站| 国产精品久久久久影院色| 婷婷久久久亚洲欧洲日产国码AV | 99久久精品免费国产大片| 无码久久精品国产亚洲Av影片| 国产精品VIDEOSSEX久久发布 | 欧美伊人久久大香线蕉综合| 久久成人精品视频| 麻豆AV一区二区三区久久| 武侠古典久久婷婷狼人伊人| 66精品综合久久久久久久| 久久精品国产亚洲AV香蕉| 亚洲精品国产字幕久久不卡| 中文字幕无码av激情不卡久久| 国产一区二区精品久久凹凸| 久久香蕉一级毛片| 99精品久久精品| 国产精品久久99| 国产精品久久久久无码av| 久久er99热精品一区二区| 精品久久久久久无码专区| 亚洲AV日韩精品久久久久久| 久久久国产99久久国产一| 久久久这里有精品| 精品熟女少妇AV免费久久| 国产美女亚洲精品久久久综合| 亚洲国产成人乱码精品女人久久久不卡| 精品综合久久久久久97超人| 国产午夜精品久久久久九九电影|