Fonction NtPowerInformation (wdm.h)
Le NtPowerInformation ensembles de routines ou récupère les informations d’alimentation système.
Syntaxe
__kernel_entry NTSYSCALLAPI NTSTATUS NtPowerInformation(
[in] POWER_INFORMATION_LEVEL InformationLevel,
[in, optional] PVOID InputBuffer,
[in] ULONG InputBufferLength,
[out, optional] PVOID OutputBuffer,
[in] ULONG OutputBufferLength
);
Paramètres
[in] InformationLevel
Spécifie le niveau d’informations demandé, qui indique les informations d’alimentation spécifiques à définir ou à récupérer. Actuellement, la seule valeur POWER_INFORMATION_LEVEL prise en charge est PlatformInformation.
Valeur | Description |
---|---|
PlatformInformation | Les informations représentent les fonctionnalités de puissance actuellement prises en charge du système. Les informations peuvent changer à mesure que les pilotes sont installés. Par exemple, l’installation de pilotes de périphérique hérités qui ne prennent pas en charge la gestion de l’alimentation peut modifier les fonctionnalités du système. |
[in, optional] InputBuffer
Pointeur vers une mémoire tampon d’entrée allouée par l’appelant. Ce paramètre doit être NULL ; sinon, ERROR_INVALID_PARAMETER est retourné.
[in] InputBufferLength
Taille, en octets, de la mémoire tampon à InputBuffer. Le paramètre doit être défini sur zéro.
[out, optional] OutputBuffer
Pointeur vers une mémoire tampon de sortie. Le type de données de cette mémoire tampon dépend du niveau d’informations demandé dans le paramètre InformationLevel. Pour le niveau PlatformInformation, la seule valeur actuellement prise en charge, le paramètre OutputBuffer est requis et doit être du type POWER_PLATFORM_INFORMATION.
[in] OutputBufferLength
Taille, en octets, de la mémoire tampon de sortie. Selon le niveau d’information demandé, la mémoire tampon peut être dimensionnée de manière variable. PlatformInformation, la seule valeur actuellement prise en charge, nécessite une mémoire tampon qui est la taille d’une structure POWER_PLATFORM_INFORMATION.
Valeur de retour
Retourne STATUS_SUCCESS si l’appel réussit. Si l’appel échoue, les codes d’erreur possibles sont les suivants :
Retourner le code | Description |
---|---|
STATUS_BUFFER_TOO_SMALL | La mémoire tampon de sortie est de taille insuffisante pour contenir les données retournées. |
STATUS_INVALID_PARAMETER | La PlatformInformation niveau d’informations, qui est la seule valeur actuellement prise en charge, ne nécessite aucune mémoire tampon d’entrée et doit contenir une mémoire tampon de sortie. L’appelant a fourni une mémoire tampon d’entrée ou aucune mémoire tampon de sortie. |
STATUS_ACCESS_DENIED | L’appelant avait des droits d’accès insuffisants pour effectuer l’action demandée. |
Remarques
NtPowerInformation et ZwPowerInformation sont deux versions de la même routine Windows Native System Services.
Pour les appels à partir de pilotes en mode noyau, les versions NtXxx et ZwXxx d’une routine Windows Native System Services peuvent se comporter différemment de la façon dont elles gèrent et interprètent les paramètres d’entrée. Pour plus d’informations sur la relation entre les versions NtXxx et ZwXxx d’une routine, consultez Using Nt and Zw Versions of the Native System Services Routines.
Exemples
Cet exemple illustre un appel de fonction valide.
POWER_PLATFORM_INFORMATION PlatformInfo = {0};
NTSTATUS Result = NtPowerInformation(PlatformInformation, NULL, 0, &PlatformInfo, sizeof(PlatformInfo));
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 8 |
serveur minimum pris en charge | Windows Server 2012 |
plateforme cible | Universel |
d’en-tête | wdm.h (include Wdm.h, Ntddk.h, Ntpoapi.h) |
bibliothèque | Ntoskrnl.lib |
DLL | Ntoskrnl.lib |
IRQL | PASSIVE_LEVEL |
règles de conformité DDI | HwStorPortProhibitedDDIs, PowerIrpDDis |
Voir aussi
à l’aide de versions Nt et Zw des routines natives des services système