PoFxRegisterPluginEx 例程向 Windows 电源管理框架(PoFx)注册平台扩展插件(PEP)。
语法
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。 可能的错误返回值包括以下状态代码。
返回值 | 描述 |
---|---|
|
版本 或 大小PEP_KERNEL_INFORMATION 结构的成员设置为无效值;或此结构的 AcceptDeviceNotification 成员设置为 NULL。 |
|
版本PEP_INFORMATION 结构的成员设置为无效值。 |
|
无法分配完成所请求注册所需的资源。 |
言论
PEP 调用此例程以向 PoFx 注册自身。
PEP 无法注销,并且无法注册两次。 如果必须为 PEP 提供服务,则作系统必须重启。
PoFxRegisterPlugin 例程类似于 PoFxRegisterPluginEx,只不过它不采用 Flags 参数。
PEP 必须在 IRQL = PASSIVE_LEVEL 调用 PoFxRegisterPluginEx。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 从 Windows 10 开始可用。 |
目标平台 | 窗户 |
标头 | pepfx.h (include Pep_x.h) |
库 | Ntoskrnl.lib |
IRQL | PASSIVE_LEVEL |