首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

关于_try _except中的GetExceptionCode跟GetExceptionInformation宏

2012-07-25 
关于__try __except中的GetExceptionCode和GetExceptionInformation宏?网上看到这两个宏只能在紧跟__excep

关于__try __except中的GetExceptionCode和GetExceptionInformation宏?
网上看到这两个宏只能在紧跟__except后的括号中使用,否则结果不能保证。但我发现GetExceptionCode可以在__except后的语句块使用,并且得到了ExceptionCode。请问这样用有什么副作用吗?

C/C++ code
    int        *error = 0;    ULONG    errcode = 0;    __try{        *error = 0;    }    __except( EXCEPTION_EXECUTE_HANDLER/*AnalysisException(GetExceptionInformation())*/ ){        //===============================================================        //= = Safe place.        errcode = GetExceptionCode();                    switch ( errcode ){        case EXCEPTION_ACCESS_VIOLATION:            MessageBox( NULL, "非法访问!", "Hint", MB_OK );            break;        case EXCEPTION_INT_DIVIDE_BY_ZERO:            MessageBox( NULL, "除0错误!", "Hint", MB_OK );            break;        case EXCEPTION_SINGLE_STEP:            MessageBox( NULL, "单步中断!", "Hint", MB_OK );            break;        case EXCEPTION_BREAKPOINT:            MessageBox( NULL, "断点异常!", "Hint", MB_OK );            break;        default:            MessageBox( NULL, "程序异常!", "Hint", MB_OK );            break;        }    }




[解决办法]
测试一下吧。我认为没问题

热点排行