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。 可能的错误返回值包括以下状态代码。
返回值 | 说明 |
---|---|
|
PEP_KERNEL_INFORMATION 结构的 Version 或 Size 成员设置为无效值;或此结构的 AcceptDeviceNotification 成员设置为 NULL。 |
|
PEP_INFORMATION 结构的 Version 成员设置为无效值。 |
|
无法分配完成请求的注册所需的资源。 |
注解
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 |