try..catch捕获不到空指针等异常的问题

今天在写dll的时候,由于无法判断指针指向的地址是否合法,从而导致dll注入目标进程之后经常莫名其妙崩溃,写了一堆if判断仍然无用。

是时候上try…catch大法了。
try..catch捕获不到空指针等异常的问题_第1张图片
奇怪的是,加上try…catch之后,目标进程仍然崩溃,DebugView也没有显示dll输出的异常。

这™怎么回事?
try..catch捕获不到空指针等异常的问题_第2张图片

经过搜索大量资料后,最终发现加入语句之后还需要对项目进行设置,才可以让try…catch语句捕获到异常。

  1. 项目右键打开属性try..catch捕获不到空指针等异常的问题_第3张图片
  2. 按下图进行设置try..catch捕获不到空指针等异常的问题_第4张图片
  3. 然后重新编译。

经过上面的步骤之后,现在try…catch可以捕获到异常了。

try..catch捕获不到空指针等异常的问题_第5张图片

参考原文:https://blog.csdn.net/hellokandy/article/details/89633756

你可能感兴趣的:(C/C++,Cheat,Windows,c++)