PFN_WER_RUNTIME_EXCEPTION_EVENT回调函数 (werapi.h)

Windows 错误报告 (WER) 调用此函数来确定异常处理程序是否正在声明崩溃。

PFN_WER_RUNTIME_EXCEPTION_EVENT类型定义指向此回调函数的指针。 必须使用“OutOfProcessExceptionEventCallback”作为回调函数的名称。

语法

PFN_WER_RUNTIME_EXCEPTION_EVENT PfnWerRuntimeExceptionEvent;

HRESULT PfnWerRuntimeExceptionEvent(
  [in]      PVOID pContext,
  [in]      const PWER_RUNTIME_EXCEPTION_INFORMATION pExceptionInformation,
  [out]     BOOL *pbOwnershipClaimed,
  [out]     PWSTR pwszEventName,
  [in, out] PDWORD pchSize,
  [out]     PDWORD pdwSignatureCount
)
{...}

参数

[in] pContext

指向在调用 WerRegisterRuntimeExceptionModule 函数以注册异常处理程序时指定的任意上下文信息的指针。

[in] pExceptionInformation

包含异常信息的 WER_RUNTIME_EXCEPTION_INFORMATION 结构。 使用信息确定是否要声明崩溃。

[out] pbOwnershipClaimed

如果异常处理程序声称此崩溃,则设置为 TRUE ;否则为 FALSE。 如果将此参数设置为 FALSE,请不要设置 out 参数的其余部分。

[out] pwszEventName

调用方分配的缓冲区,用于指定用于标识此崩溃的事件名称。

[in, out] pchSize

pwszEventName 缓冲区的大小(以字符为单位)。 缓冲区限制为MAX_PATH个字符。 大小包括 null 终止字符。

[out] pdwSignatureCount

你将提供的报表参数数。 值的有效范围是 1 到 10。 如果指定的值大于 10,WER 将忽略该值,并仅收集前 10 个参数。 如果指定零,则报告过程将不确定。

此值确定 WER 调用 OutOfProcessExceptionEventSignatureCallback 函数的次数。

返回值

返回 S_OK,即使异常处理程序未声明此崩溃也是如此。 如果返回其他失败代码,如果未注册其他处理程序,WER 将还原为其默认的崩溃报告行为。

注解

必须在异常处理程序 DLL 中实现此函数。

要求

要求
最低受支持的客户端 Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
目标平台 Windows
标头 werapi.h

另请参阅

WerRegisterRuntimeExceptionModule,Windows 错误报告