Поделиться через


Функция WdfDeviceIndicateWakeStatus (wdfdevice.h)

[Применимо только к KMDF]

Метод WdfDeviceIndicateWakeStatus сообщает платформе, что вызывающий водитель шины перестал ждать, пока указанное устройство активирует сигнал пробуждения на автобусе.

Синтаксис

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

Параметры

[in] Device

Дескриптор объекта устройства платформы.

[in] WaitWakeStatus

Значение состояния NTSTATUS. Если устройство активировало сигнал пробуждения, вызывающий объект должен задать значение STATUS_SUCCESS или другое значение состояния, для которого NT_SUCCESS(WaitWakeStatus) равен 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.

Ошибка возникает, если драйвер предоставляет недопустимый дескриптор объекта.

Замечания

Если NT_SUCCESS(WaitWakeStatus) равно TRUE, платформа восстановит устройство и систему в их рабочих состояниях. Если NT_SUCCESS(WaitWakeStatus) равно FALSE, устройство и система останутся в своих текущих состояниях.

Дополнительные сведения о вызове метода WdfDeviceIndicateWakeStatus см. в поддержкепробуждения системы.

Примеры

Следующий пример кода сообщает платформе, что указанное устройство активировало сигнал пробуждения.

NTSTATUS  status;

status = WdfDeviceIndicateWakeStatus(
                                     hChild,
                                     STATUS_SUCCESS
                                     );

Требования

Требование Ценность
целевая платформа Всеобщий
минимальная версия KMDF 1.0
заголовка wdfdevice.h (include Wdf.h)
библиотеки Wdf01000.sys (см. управление версиями библиотеки Платформы).)
IRQL <= DISPATCH_LEVEL
правил соответствия DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)