PSHED_PI_ENABLE_ERROR_SOURCE回调函数 (ntddk.h)

PSHED 插件的 EnableErrorSource 回调函数启用错误源。

语法

PSHED_PI_ENABLE_ERROR_SOURCE PshedPiEnableErrorSource;

NTSTATUS PshedPiEnableErrorSource(
  [in, out, optional] PVOID PluginContext,
  [in]                PWHEA_ERROR_SOURCE_DESCRIPTOR ErrorSource
)
{...}

参数

[in, out, optional] PluginContext

指向上下文区域的指针,当 PSHED 插件调用 PshedRegisterPlugin 函数以向 PSHED 注册自身时,在 WHEA_PSHED_PLUGIN_REGISTRATION_PACKET 结构的 Context 成员中指定的上下文区域。

[in] ErrorSource

指向 WHEA_ERROR_SOURCE_DESCRIPTOR 结构的指针,该结构描述正在启用的错误源。

返回值

PSHED 插件的 EnableErrorSource 回调函数返回以下 NTSTATUS 代码之一:

返回代码 说明
STATUS_SUCCESS 已成功启用错误源。
STATUS_NOT_SUPPORTED PSHED 插件不支持启用指定的错误源。
STATUS_UNSUCCESSFUL 出现了错误。

注解

参与错误源代码管理的 PSHED 插件将 WHEA_PSHED_PLUGIN_REGISTRATION_PACKET 结构的 Callbacks.SetErrorSourceInfoCallbacks.EnableErrorSourceCallbacks.DisableErrorSource 成员设置为在插件调用 PshedRegisterPlugin 函数时指向其 SetErrorSourceInfoEnableErrorSourceDisableErrorSource 回调函数。 PSHED 插件还必须在 WHEA_PSHED_PLUGIN_REGISTRATION_PACKET 结构的 FunctionalAreaMask 成员中设置 PshedFAErrorSourceControl 标志。

Windows 内核调用 PSHED,以启用在错误源发现期间报告的每个错误源。 Windows 内核还会调用 PSHED 来启用错误源,以响应 WHEA 管理应用程序发出的错误源启用请求。 如果注册 PSHED 插件以参与错误源代码管理,则 PSHED 会调用 PSHED 插件的 EnableErrorSource 回调函数,为 PSHED 插件提供启用错误源的机会。 如果 EnableErrorSource 回调函数返回STATUS_NOT_SUPPORTED,则 PSHED 将启用错误源。 否则,PSHED 将仅返回 EnableErrorSource 回调函数返回的返回值。

如果 PSHED 插件成功启用错误源,在调用 PSHED 插件的 EnableErrorSource 回调函数返回后,PSHED 将代表 PSHED 插件更新WHEA_ERROR_SOURCE_DESCRIPTOR结构。 PSHED 插件的 EnableErrorSource 回调函数不应修改错误源描述符。

要求

要求
目标平台 桌面
标头 ntddk.h (包括 Ntddk.h)
IRQL IRQL = DISPATCH_LEVEL

另请参阅

DisableErrorSource

PshedRegisterPlugin

SetErrorSourceInfo

WHEA_ERROR_SOURCE_DESCRIPTOR

WHEA_PSHED_PLUGIN_REGISTRATION_PACKET