C++ SetunhandledExceptionFilter()方法调用后进不去自己的方法

上面这个myexceptionFIlter方法怎么都进不去,myexceptionFIlter里的prints不会打印

img


img

为啥会进去呢?main函数中也没有用到这个函数啊

注册异常处理函数应该要将那个函数作为参数传递进去吧,你代码里面传了NULL,怎么进去那个函数处理啊

LPTOP_LEVEL_EXCEPTION_FILTER pPrevFilter = SetUnhandledExceptionFilter(MyExceptionFileter);

从代码上看,你这里是想注册一个异常处理函数,当一个异常产生且我们的 try - catch(或 try - expect)没有处理处理这个异常时,异常会转交给 SetUnhandledExceptionFilter 。那可以像截图中那种形式,加个判断。不能直接传入SetUnhandledExceptionFilter (NULL).

img


为了方便你借鉴和debug,我将该链接分享,供你参考:https://blog.csdn.net/zm_21/article/details/24962159

乌龙问题,打扰大家了,具体原因是我以为把运行本地windows调试器 按钮旁边的debug调成release就可以了,实际上点.exe文件直接运行才算release,,, 现在点exe文件直接运行是可以进入myException方法的 而且代码完全没改动

我话音没落,你就找到原因是因为调试模式了,可以

img