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


Функция DevicePowerEnumDevices (powrprof.h)

Перечисляет устройства в системе, которые соответствуют заданным критериям.

Синтаксис

BOOLEAN DevicePowerEnumDevices(
  [in]            ULONG  QueryIndex,
  [in]            ULONG  QueryInterpretationFlags,
  [in]            ULONG  QueryFlags,
  [out, optional] PBYTE  pReturnBuffer,
  [in, out]       PULONG pBufferSize
);

Параметры

[in] QueryIndex

Индекс запрошенного устройства. Для начальных вызовов это значение должно быть равно нулю.

[in] QueryInterpretationFlags

Критерии, применяемые к результатам поиска.

Значение Значение
DEVICEPOWER_HARDWAREID
0x80000000
Возвращает строку идентификатора оборудования, а не понятное имя устройства.
DEVICEPOWER_FILTER_DEVICES_PRESENT
0x20000000
Игнорируйте устройства, которые в настоящее время отсутствуют в системе.
DEVICEPOWER_AND_OPERATION
0x40000000
Выполните операцию AND с QueryFlags.
DEVICEPOWER_FILTER_WAKEENABLED
0x08000000
Проверьте, включено ли устройство для пробуждения системы из спящего режима.
DEVICEPOWER_FILTER_ON_NAME
0x02000000
Найдите устройство, имя которого соответствует строке, переданной в pReturnBuffer, и проверка его возможности в QueryFlags.

[in] QueryFlags

Критерии запроса.

Значение Значение
PDCAP_D0_SUPPORTED
0x00000001
Устройство поддерживает состояние питания системы D0.
PDCAP_D1_SUPPORTED
0x00000002
Устройство поддерживает состояние питания системы D1.
PDCAP_D2_SUPPORTED
0x00000004
Устройство поддерживает состояние питания системы D2.
PDCAP_D3_SUPPORTED
0x00000008
Устройство поддерживает состояние питания системы D3.
PDCAP_S0_SUPPORTED
0x00010000
Устройство поддерживает системное состояние спящего режима S0.
PDCAP_S1_SUPPORTED
0x00020000
Устройство поддерживает системное состояние спящего режима S1.
PDCAP_S2_SUPPORTED
0x00040000
Устройство поддерживает системное состояние спящего режима S2.
PDCAP_S3_SUPPORTED
0x00080000
Устройство поддерживает системное состояние спящего режима S3.
PDCAP_S4_SUPPORTED
0x01000000
Устройство поддерживает системное состояние спящего режима S4.
PDCAP_S5_SUPPORTED
0x02000000
Устройство поддерживает системное состояние спящего режима S5.
PDCAP_WAKE_FROM_D0_SUPPORTED
0x00000010
Устройство поддерживает пробуждение из состояния питания системы D0.
PDCAP_WAKE_FROM_D1_SUPPORTED
0x00000020
Устройство поддерживает пробуждение из состояния питания системы D1.
PDCAP_WAKE_FROM_D2_SUPPORTED
0x00000040
Устройство поддерживает пробуждение из состояния питания системы D2.
PDCAP_WAKE_FROM_D3_SUPPORTED
0x00000080
Устройство поддерживает пробуждение из состояния питания системы D3.
PDCAP_WAKE_FROM_S0_SUPPORTED
0x00100000
Устройство поддерживает пробуждение из системного состояния спящего режима S0.
PDCAP_WAKE_FROM_S1_SUPPORTED
0x00200000
Устройство поддерживает пробуждение из системного состояния спящего режима S1.
PDCAP_WAKE_FROM_S2_SUPPORTED
0x00400000
Устройство поддерживает пробуждение из системного состояния спящего режима S2.
PDCAP_WAKE_FROM_S3_SUPPORTED
0x00800000
Устройство поддерживает пробуждение из системного состояния спящего режима S3.
PDCAP_WARM_EJECT_SUPPORTED
0x00000100
Устройство поддерживает теплое извлечение.

[out, optional] pReturnBuffer

Указатель на буфер, который получает запрошенные сведения.

[in, out] pBufferSize

Размер возвращаемого буфера (в байтах).

Примечание Если pReturnBuffer имеет значение NULL, pBufferSize будет заполнен размером, необходимым для возврата данных.
 

Возвращаемое значение

Если функция выполняется успешно, возвращается ненулевое значение.

Если функция выполняется неудачно, возвращается нулевое значение.

Комментарии

Значения параметра QueryFlags можно объединить для запроса устройств, поддерживающих два или более критерия. Например; Если PDCAP_D3_SUPPORTED | PDCAP_D1_SUPPORTED передается в качестве параметра QueryFlags , функция будет запрашивать устройства, поддерживающие D3 или D1.

QueryFlags также можно объединить с Параметром QueryInterpretationFlags , для DEVICEPOWER_AND_OPERATION для создания запроса устройств, поддерживающих все запрошенные условия. Например; Если PDCAP_D3_SUPPORTED | PDCAP_D1_SUPPORTED передается в качестве параметра QueryFlags , а DEVICEPOWER_AND_OPERATION передается в качестве параметра QueryInterpretationFlags , функция будет запрашивать устройства, поддерживающие как D3, так и D1.

Примеры

Пример использования этой функции см. в разделе Использование API power для устройств.

Требования

   
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header powrprof.h
Библиотека PowrProf.lib
DLL PowrProf.dll

См. также раздел

Управление питанием устройств