poFxRegisterPluginEx 函数 (pepfx.h)

PoFxRegisterPluginEx 例程将平台扩展插件 (PEP) 注册到 Windows 电源管理框架 (PoFx) 。

语法

NTSTATUS PoFxRegisterPluginEx(
  [in]      PPEP_INFORMATION        PepInformation,
  [in]      ULONGLONG               Flags,
  [in, out] PPEP_KERNEL_INFORMATION KernelInformation
);

参数

[in] PepInformation

指向 PEP_INFORMATION 结构的指针,该结构包含指向 PEP 实现的一个或多个回调例程的指针。 这些例程处理 PoFx 发送到 PEP 的通知。

[in] Flags

一组用于配置 PEP 接口的标志位。 将此成员设置为零或设置为以下值。

标志位 说明
PEP_FLAG_WORKER_CONCURRENCY

[in, out] KernelInformation

指向 PEP_KERNEL_INFORMATION 结构的指针。

返回值

如果调用成功注册 PEP,则 PoFxRegisterPluginEx 返回STATUS_SUCCESS。 可能的错误返回值包括以下状态代码。

返回值 说明
STATUS_INVALID_PARAMETER
PEP_KERNEL_INFORMATION 结构的 VersionSize 成员设置为无效值;或此结构的 AcceptDeviceNotification 成员设置为 NULL。
STATUS_INVALID_PEP_INFO_VERSION
PEP_INFORMATION 结构的 Version 成员设置为无效值。
STATUS_INSUFFICIENT_RESOURCES
无法分配完成请求的注册所需的资源。

注解

PEP 调用此例程以向 PoFx 注册自身。

PEP 无法注销,并且无法注册两次。 如果必须维护 PEP,则必须重启操作系统。

PoFxRegisterPlugin 例程类似于 PoFxRegisterPluginEx,只不过它不采用 Flags 参数。

PEP 必须在 IRQL = PASSIVE_LEVEL 调用 PoFxRegisterPluginEx

要求

要求
最低受支持的客户端 从 Windows 10 开始可用。
目标平台 Windows
标头 pepfx.h (包括 Pep_x.h)
Library Ntoskrnl.lib
IRQL PASSIVE_LEVEL

另请参阅

PEP_INFORMATION

PEP_KERNEL_INFORMATION

PoFxRegisterPlugin