Partager via


ExSetFirmwareEnvironmentVariable, fonction (wdm.h)

La routine ExSetFirmwareEnvironmentVariable définit la valeur de la variable d’environnement du microprogramme système spécifiée.

Syntaxe

NTSTATUS ExSetFirmwareEnvironmentVariable(
  [in] PUNICODE_STRING VariableName,
  [in] LPGUID          VendorGuid,
  [in] PVOID           Value,
  [in] ULONG           ValueLength,
  [in] ULONG           Attributes
);

Paramètres

[in] VariableName

Pointeur vers une structure UNICODE_STRING qui contient le nom de la variable d’environnement spécifiée.

[in] VendorGuid

Pointeur vers un GUID qui identifie le fournisseur associé à la variable d’environnement spécifiée. Les variables d’environnement sont regroupées en espaces de noms en fonction de leurs GUID de fournisseur. Certaines plateformes matérielles peuvent ne pas prendre en charge les GUID du fournisseur. Sur ces plateformes, toutes les variables sont regroupées en un, un espace de noms commun et le paramètre VendorGuid est ignoré.

[in] Value

Pointeur vers une mémoire tampon allouée par l’appelant qui contient la valeur de données à écrire dans la variable d’environnement spécifiée.

[in] ValueLength

Taille, en octets, de la valeur de données contenue dans la mémoire tampon Valeur.

[in] Attributes

Attributs à affecter à la variable d’environnement spécifiée. Le bit d’attribut VARIABLE_ATTRIBUTE_NON_VOLATILE doit être défini ou cet appel échoue. Pour plus d’informations sur les bits d’attribut définis pour ce paramètre, consultez Remarques dans ExGetFirmwareEnvironmentVariable.

Valeur de retour

ExSetFirmwareEnvironmentVariable retourne STATUS_SUCCESS si elle réussit. Les valeurs de retour possibles incluent les codes d’état d’erreur suivants.

Retourner le code Description
STATUS_INSUFFICIENT_RESOURCES
Les ressources système disponibles sont insuffisantes pour terminer l’opération demandée.
STATUS_INVALID_PARAMETER
L’un des paramètres n’est pas valide.
STATUS_NOT_IMPLEMENTED
Cette routine n’est pas prise en charge sur cette plateforme.
STATUS_UNSUCCESSFUL
Le microprogramme a retourné une erreur non reconnue.

Remarques

L’appelant requiert le privilège d’environnement système (SE_SYSTEM_ENVIRONMENT_PRIVILEGE) pour utiliser cette routine.

Les variables d’environnement du microprogramme système contiennent des valeurs de données transmises entre l’environnement de microprogramme de démarrage implémenté dans la plateforme matérielle et les chargeurs du système d’exploitation et d’autres logiciels qui s’exécutent dans l’environnement du microprogramme. Pour plus d’informations, consultez Remarques dans ExGetFirmwareEnvironmentVariable.

Si vous créez un magasin de données de sauvegarde, vous pouvez utiliser la routine ExGetFirmwareEnvironmentVariable pour enregistrer tous les paramètres de démarrage de la plateforme. Plus tard, vous pouvez utiliser ExSetFirmwareEnvironmentVariable pour restaurer ces paramètres si nécessaire.

ExSetFirmwareEnvironmentVariable est l’équivalent en mode noyau de la fonction Win32 SetFirmwareEnvironmentVariable.

Exigences

Exigence Valeur
client minimum pris en charge Disponible à partir de Windows 8.
plateforme cible Universel
d’en-tête wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

Voir aussi

ExGetFirmwareEnvironmentVariable

SetFirmwareEnvironmentVariable

UNICODE_STRING