C ++ - 捕获所有异常?

时间:2011-09-02 19:12:23

标签: c++ exception dll exception-handling

我想将DLL注入进程。一旦这个DLL在那里,它应该赶上&正确处理流程中发生的所有访问冲突异常。有没有办法实现这个目标?

4 个答案:

答案 0 :(得分:4)

SetUnhandledExceptionFilter(功能)怎么样?

功能的原型是:

LONG __stdcall ExceptionHandler(EXCEPTION_POINTERS *ExceptionInfo);

我已经使用此功能来创建崩溃转储等。

答案 1 :(得分:1)

您可以使用结构化异常处理(SEH)来捕获此类异常。具体来说,this Windows功能似乎就是你想要做的。

答案 2 :(得分:0)

要完成收藏,您还可以使用AddVectoredExceptionHandler

答案 3 :(得分:0)

在XP之前,您无法捕获所有异常。 XP或更高版本,您应该使用AddVectoredExceptionHandler(1, handler),但不能保证您始终是第一个向量异常处理程序。