функция обратного вызова EVT_NET_DEVICE_PREVIEW_WAKE_SOURCE (netdevice.h)
Реализуйте этот необязательный обратный вызов, чтобы отклонить шаблоны пробуждения, несовместимые с оборудованием.
Синтаксис
EVT_NET_DEVICE_PREVIEW_WAKE_SOURCE EvtNetDevicePreviewWakeSource;
NTSTATUS EvtNetDevicePreviewWakeSource(
[_In_] WDFDEVICE Device,
[_In_] NETWAKESOURCE WakeSource
)
{...}
Параметры
[_In_] Device
Объект WDFDEVICE, который драйвер клиента ранее получил с помощью вызова WdfDeviceCreate.
[_In_] WakeSource
Объект NETWAKESOURCE, представляющий источник пробуждения для проверки.
Возвращаемое значение
Чтобы принять шаблон, функция обратного вызова должна возвращать STATUS_SUCCESS.
Чтобы отклонить шаблон, верните STATUS_NDIS_PM_WOL_PATTERN_LIST_FULL.
Комментарии
Драйверы не требуются для реализации EvtNetDevicePreviewWakeSource, так как NetAdapterCx уже блокирует источники пробуждения, несовместимые с NET_ADAPTER_WAKE_BITMAP_CAPABILITIES драйвера. Однако если у вашего оборудования есть дополнительные ограничения, которые не могут быть выражены в структуре возможностей растрового изображения, можно указать EvtNetDevicePreviewWakeSource для применения этих дополнительных ограничений.
Зарегистрируйте реализацию этой функции обратного вызова, задав соответствующий член NET_DEVICE_POWER_POLICY_EVENT_CALLBACKS, а затем вызвав NetDeviceInitSetPowerPolicyEventCallbacks.
Клиентские драйверы обычно вызывают NetDeviceInitSetPowerPolicyEventCallbacks при создании объекта устройства перед вызовом WdfDeviceCreate.
В этом обратном вызове клиентские драйверы получают возможность отклонить источник пробуждения. Например, если количество фильтров питания в текущем списке источников пробуждения для устройства уже достигло или превысило количество фильтров питания, поддерживаемых оборудованием, драйвер может отклонить этот источник пробуждения.
Дополнительные сведения см. в разделе Настройка управления питанием.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10 версии 2004 |
Целевая платформа | Универсальное |
Минимальная версия UMDF | 2.33 |
Верхняя часть | netdevice.h (включая netadaptercx.h) |
IRQL | PASSIVE_LEVEL |