Compartir a través de


Función NtPowerInformation (wdm.h)

El NtPowerInformation conjuntos de rutinas o recupera información de energía del sistema.

Sintaxis

__kernel_entry NTSYSCALLAPI NTSTATUS NtPowerInformation(
  [in]            POWER_INFORMATION_LEVEL InformationLevel,
  [in, optional]  PVOID                   InputBuffer,
  [in]            ULONG                   InputBufferLength,
  [out, optional] PVOID                   OutputBuffer,
  [in]            ULONG                   OutputBufferLength
);

Parámetros

[in] InformationLevel

Especifica el nivel de información solicitado, que indica la información de energía específica que se va a establecer o recuperar. Actualmente, el único valor de POWER_INFORMATION_LEVEL admitido es PlatformInformation.

Valor Descripción
PlatformInformation de La información representa las funcionalidades de potencia admitidas actualmente del sistema. La información puede cambiar a medida que se instalan los controladores. Por ejemplo, la instalación de controladores de dispositivos heredados que no admiten la administración de energía podría modificar las funcionalidades del sistema.

[in, optional] InputBuffer

Puntero a un búfer de entrada asignado por el autor de la llamada. Este parámetro debe ser NULL; de lo contrario, se devuelve ERROR_INVALID_PARAMETER.

[in] InputBufferLength

Tamaño, en bytes, del búfer en InputBuffer. El parámetro debe establecerse en cero.

[out, optional] OutputBuffer

Puntero a un búfer de salida. El tipo de datos de este búfer depende del nivel de información solicitado en el parámetro InformationLevel. Para el nivel platformInformation de, el único valor admitido actualmente, se requiere el parámetro OutputBuffer y debe ser del tipo POWER_PLATFORM_INFORMATION.

[in] OutputBufferLength

Tamaño, en bytes, del búfer de salida. Según el nivel de información solicitado, el búfer puede tener un tamaño variable. PlatformInformation, el único valor admitido actualmente, requiere un búfer que sea el tamaño de una estructura de POWER_PLATFORM_INFORMATION.

Valor devuelto

Devuelve STATUS_SUCCESS si la llamada se realiza correctamente. Si se produce un error en la llamada, los códigos de error posibles incluyen lo siguiente:

Código devuelto Descripción
STATUS_BUFFER_TOO_SMALL El búfer de salida es de tamaño insuficiente para contener los datos que se devuelven.
STATUS_INVALID_PARAMETER El PlatformInformation nivel de información, que es el único valor admitido actualmente, no requiere ningún búfer de entrada y debe contener un búfer de salida. El autor de la llamada proporcionó un búfer de entrada o ningún búfer de salida.
STATUS_ACCESS_DENIED El autor de la llamada no tenía derechos de acceso suficientes para realizar la acción solicitada.

Observaciones

NtPowerInformation y ZwPowerInformation son dos versiones de la misma rutina de Servicios del sistema nativo de Windows.

En el caso de las llamadas desde controladores en modo kernel, las NtXxx y Zwversiones de Xxx de una rutina de Servicios del sistema nativo de Windows pueden comportarse de forma diferente en la forma en que controlan e interpretan los parámetros de entrada. Para obtener más información sobre la relación entre las versiones de NtXxx y ZwXxx de una rutina, vea Using Nt and Zw Versions of the Native System Services Routines.

Ejemplos

En este ejemplo se muestra una llamada de función válida.

POWER_PLATFORM_INFORMATION PlatformInfo = {0};
NTSTATUS Result = NtPowerInformation(PlatformInformation, NULL, 0, &PlatformInfo, sizeof(PlatformInfo));

Requisitos

Requisito Valor
cliente mínimo admitido Windows 8
servidor mínimo admitido Windows Server 2012
de la plataforma de destino de Universal
encabezado de wdm.h (include Wdm.h, Ntddk.h, Ntpoapi.h)
biblioteca de Ntoskrnl.lib
DLL de Ntoskrnl.lib
irQL PASSIVE_LEVEL
reglas de cumplimiento de DDI HwStorPortProhibitedDIs, PowerIrpDDis

Consulte también

POWER_PLATFORM_INFORMATION

usar versiones Nt y Zw de las rutinas de servicios del sistema nativo