PSHED_PI_GET_INJECTION_CAPABILITIES回调函数 (ntddk.h)
PSHED 插件的 GetInjectionCapabilities 回调函数返回错误注入功能联合,该联合描述可注入到硬件平台中的硬件错误类型。
语法
PSHED_PI_GET_INJECTION_CAPABILITIES PshedPiGetInjectionCapabilities;
NTSTATUS PshedPiGetInjectionCapabilities(
[in, out, optional] PVOID PluginContext,
[out] PWHEA_ERROR_INJECTION_CAPABILITIES Capabilities
)
{...}
参数
[in, out, optional] PluginContext
指向当 PSHED 插件调用 PshedRegisterPlugin 函数以向 PSHED 注册自身时,在 WHEA_PSHED_PLUGIN_REGISTRATION_PACKET 结构的 Context 成员中指定的上下文区域的指针。
[out] Capabilities
指向 WHEA_ERROR_INJECTION_CAPABILITIES联合的 指针。 此联合接收描述可注入到硬件平台的硬件错误类型的数据。
返回值
PSHED 插件的 GetInjectionCapabilities 回调函数返回以下 NTSTATUS 代码之一:
返回代码 | 说明 |
---|---|
STATUS_SUCCESS | 描述可以注入到硬件平台的硬件错误类型的数据在 Capabilities 参数指向的WHEA_ERROR_INJECTION_CAPABILITIES联合中成功返回。 |
STATUS_UNSUCCESSFUL | 出现了错误。 |
注解
参与错误注入的 PSHED 插件将WHEA_PSHED_PLUGIN_REGISTRATION_PACKET结构的 Callbacks.GetInjectionCapabilities 和 Callbacks.InjectError 成员设置为指向其 GetInjectionCapabilities 和 InjectError 回调函数,当插件调用 PshedRegisterPlugin 函数以向 PSHED 注册自身时。 PSHED 插件还必须在 WHEA_PSHED_PLUGIN_REGISTRATION_PACKET 结构的 FunctionalAreaMask 成员中设置 PshedFAErrorInjection 标志。
Windows 内核调用 PSHED 来检索有关硬件错误类型的信息,这些错误可以注入硬件平台,以响应 WHEA 管理应用程序的错误注入功能查询。 如果注册 PSHED 插件以参与错误注入,则 PSHED 会调用 PSHED 插件的 GetInjectionCapabilities 回调函数,以检索有关可注入到硬件平台的其他类型的硬件错误的信息。
要求
要求 | 值 |
---|---|
目标平台 | 桌面 |
标头 | ntddk.h (包括 Ntddk.h) |
IRQL | IRQL = DISPATCH_LEVEL |