GetExceptionInformation

【勇芳软件工作室】汉化HomePreviousNext

GetExceptionInformation函数检索与机器无关的异常描述,以及有关发生异常时针对线程存在的计算机状态的信息。只能从尝试 - 异常处理程序的过滤器表达式中调用此函数。

LPEXCEPTION_POINTERS GetExceptionInformation(VOID)

参数

此函数无参数。

返回值

返回值是一个指向EXCEPTION_POINTERS结构的指针,其中包含两个其他结构的指针:包含异常描述的EXCEPTION_RECORD结构和包含机器状态信息的CONTEXT结构。

备注

如果在尝试块的执行期间发生异常,则会评估过滤器表达式(从中调用函数),并确定是否执行块。以下示例显示尝试 - 语句的结构。

尝试{

/ * try block * /

}

except(filter-expression){

/ *异常处理程序块* /

}

过滤器表达式可以调用过滤器函数。过滤功能无法调用GetExceptionInformation.但是,返回值GetExceptionInformation可以作为参数传递给过滤器函数。

要将EXCEPTION_POINTERS信息传递给异常处理程序块,过滤器表达式或过滤器函数必须将指针或数据复制到处理程序稍后访问的安全存储。

在嵌套尝试 - 语句的情况下,每个语句的过滤器表达式都将被计算,直到被评估为EXCEPTION_EXECUTE_HANDLER或EXCEPTION_CONTINUE_EXECUTION为止。每个过滤器表达式可以调用GetExceptionInformation来获取异常信息。

也可以看看

CONTEXT, EXCEPTION_POINTERS, EXCEPTION_RECORD, GetExceptionCode