Функция WdfDeviceSetPowerCapabilities (wdfdevice.h)
[Применимо к KMDF и UMDF]
Метод WdfDeviceSetPowerCapabilities сообщает о возможностях питания устройства.
Синтаксис
void WdfDeviceSetPowerCapabilities(
[in] WDFDEVICE Device,
[in] PWDF_DEVICE_POWER_CAPABILITIES PowerCapabilities
);
Параметры
[in] Device
Дескриптор объекта устройства платформы.
[in] PowerCapabilities
Указатель на структуру, выделенную драйвером WDF_DEVICE_POWER_CAPABILITIES .
Возвращаемое значение
None
Remarks
Ошибка проверка возникает, если драйвер предоставляет недопустимый дескриптор объекта.
Драйвер обычно вызывает WdfDeviceSetPowerCapabilities из одной из следующих функций обратного вызова:
-
EvtDeviceD0Entry (если параметр PreviousState имеет значение WdfPowerDeviceD3Final)
Примеры
В следующем примере кода инициализируется структура WDF_DEVICE_POWER_CAPABILITIES, а затем вызывается WdfDeviceSetPowerCapabilities.
WDF_DEVICE_POWER_CAPABILITIES powerCaps;
WDF_DEVICE_POWER_CAPABILITIES_INIT(&powerCaps);
powerCaps.DeviceD1 = WdfTrue;
powerCaps.WakeFromD1 = WdfTrue;
powerCaps.DeviceWake = PowerDeviceD1;
powerCaps.DeviceState[PowerSystemWorking] = PowerDeviceD1;
powerCaps.DeviceState[PowerSystemSleeping1] = PowerDeviceD1;
powerCaps.DeviceState[PowerSystemSleeping2] = PowerDeviceD2;
powerCaps.DeviceState[PowerSystemSleeping3] = PowerDeviceD2;
powerCaps.DeviceState[PowerSystemHibernate] = PowerDeviceD3;
powerCaps.DeviceState[PowerSystemShutdown] = PowerDeviceD3;
WdfDeviceSetPowerCapabilities(
device,
&powerCaps
);
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Минимальная версия KMDF | 1,0 |
Минимальная версия UMDF | 2,0 |
Верхняя часть | wdfdevice.h (включая Wdf.h) |
Библиотека | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
Правила соответствия DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |