WdfDeviceIndicateWakeStatus 函数 (wdfdevice.h)

[仅适用于 KMDF]

WdfDeviceIndicateWakeStatus 方法通知框架调用总线驱动程序已停止等待指定设备触发总线上的唤醒信号。

语法

NTSTATUS WdfDeviceIndicateWakeStatus(
  [in] WDFDEVICE Device,
  [in] NTSTATUS  WaitWakeStatus
);

参数

[in] Device

框架设备对象的句柄。

[in] WaitWakeStatus

NTSTATUS 状态值。 如果设备触发了唤醒信号,则调用方必须将此值设置为STATUS_SUCCESS或其他状态值,NT_SUCCESSWaitWakeStatus)等于 TRUE。 如果设备未触发唤醒信号或检测到错误,则调用方必须提供状态值,NT_SUCCESS(WaitWakeStatus)等于 FALSE。 有关详细信息,请参阅以下“备注”部分。

返回值

如果作成功,WdfDeviceIndicateWakeStatus 返回STATUS_SUCCESS。 其他返回值包括:

返回代码 描述
STATUS_INVALID_PARAMETER
WaitWakeStatus STATUS_PENDING或STATUS_CANCELLED。
STATUS_INVALID_DEVICE_REQUEST
驱动程序堆栈未设置为等待设备触发唤醒信号。
STATUS_INVALID_DEVICE_STATE
呼叫驱动程序不负责等待设备触发唤醒信号。
 

此方法可能会返回其他 NTSTATUS 值

如果驱动程序提供无效的对象句柄,则会发生 bug 检查。

言论

如果 NT_SUCCESSWaitWakeStatus) 等于 TRUE,则框架会将设备和系统还原到其工作状态。 如果 NT_SUCCESS(WaitWakeStatus) 等于 FALSE,则设备和系统将保持其当前状态。

有关调用 WdfDeviceIndicateWakeStatus 方法的详细信息,请参阅 支持系统唤醒

例子

下面的代码示例通知框架指定设备已触发唤醒信号。

NTSTATUS  status;

status = WdfDeviceIndicateWakeStatus(
                                     hChild,
                                     STATUS_SUCCESS
                                     );

要求

要求 价值
目标平台 普遍
最低 KMDF 版本 1.0
标头 wdfdevice.h (包括 Wdf.h)
Wdf01000.sys(请参阅框架库版本控制。
IRQL <= DISPATCH_LEVEL
DDI 符合性规则 DriverCreate(kmdf)KmdfIrql(kmdf)KmdfIrql2(kmdf),KmdfIrqlExplicit(kmdf)