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


Функция PoCreatePowerRequest (ntifs.h)

Подпрограмма PoCreatePowerRequest создает объект power request.

Синтаксис

NTSTATUS PoCreatePowerRequest(
  [out] PVOID                   *PowerRequest,
  [in]  PDEVICE_OBJECT          DeviceObject,
  [in]  PCOUNTED_REASON_CONTEXT Context
);

Параметры

[out] PowerRequest

Указатель на расположение, в которое подпрограмма записывает указатель на только что созданный объект power request. Если вызов завершается ошибкой, подпрограмма записывает ЗНАЧЕНИЕ NULL в это расположение.

[in] DeviceObject

Указатель на объект устройства вызывающего объекта (структура DEVICE_OBJECT).

[in] Context

Указатель на структуру COUNTED_REASON_CONTEXT, которая описывает, почему вызывающий объект создает объект power request. Этот параметр является необязательным и может иметь значение NULL.

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

PoCreatePowerRequest возвращает STATUS_SUCCESS, если вызов выполнен успешно. Если вызов завершается ошибкой, возможные коды возврата ошибок включают следующие:

Возвращаемый код Описание
STATUS_INVALID_PARAMETER Параметр DeviceObject имеет значение NULL.
STATUS_INSUFFICIENT_RESOURCES Недостаточно памяти для создания объекта power request.

Замечания

Эта подпрограмма создает объект power request. Чтобы включить запросы на питание, вызывающий объект должен создать один объект запроса питания и использовать этот объект для всех вызовов PoSetPowerRequest и Подпрограммы PoClearPowerRequest.

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

Если объект power request больше не нужен, вызывающий объект должен удалить объект, вызвав подпрограмму PoDeletePowerRequest. Драйвер должен удалить объект power request, прежде чем удалить объект устройства, который использовался для создания объекта power request.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 7
целевая платформа Всеобщий
заголовка ntifs.h (включая Wdm.h, Ntddk.h, Ntifs.h)
библиотеки NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

См. также

PoClearPowerRequest

PoDeletePowerRequest

PoSetPowerRequest