Freigeben über


ExSetFirmwareEnvironmentVariable-Funktion (wdm.h)

Die ExSetFirmwareEnvironmentVariable Routine legt den Wert der angegebenen Systemfirmwareumgebungsvariable fest.

Syntax

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

Parameter

[in] VariableName

Ein Zeiger auf eine UNICODE_STRING Struktur, die den Namen der angegebenen Umgebungsvariable enthält.

[in] VendorGuid

Ein Zeiger auf eine GUID, die den Anbieter identifiziert, der der angegebenen Umgebungsvariablen zugeordnet ist. Umgebungsvariablen werden basierend auf ihren Lieferanten-GUIDs in Namespaces gruppiert. Einige Hardwareplattformen unterstützen möglicherweise keine Hersteller-GUIDs. Auf diesen Plattformen werden alle Variablen in einem gemeinsamen Namespace gruppiert, und der VendorGuid Parameter wird ignoriert.

[in] Value

Ein Zeiger auf einen vom Aufrufer zugewiesenen Puffer, der den zu schreibenden Datenwert in die angegebene Umgebungsvariable enthält.

[in] ValueLength

Die Größe des im Wert Puffers enthaltenen Datenwerts in Byte.

[in] Attributes

Die Attribute, die der angegebenen Umgebungsvariable zugewiesen werden sollen. Das VARIABLE_ATTRIBUTE_NON_VOLATILE Attributbit muss festgelegt werden, oder dieser Aufruf schlägt fehl. Weitere Informationen zu den Attributbits, die für diesen Parameter definiert sind, finden Sie in den Hinweisen in ExGetFirmwareEnvironmentVariable.

Rückgabewert

ExSetFirmwareEnvironmentVariable gibt STATUS_SUCCESS zurück, wenn dies erfolgreich ist. Mögliche Rückgabewerte sind die folgenden Fehlerstatuscodes.

Rückgabecode Beschreibung
STATUS_INSUFFICIENT_RESOURCES
Verfügbare Systemressourcen reichen nicht aus, um den angeforderten Vorgang abzuschließen.
STATUS_INVALID_PARAMETER
Einer der Parameter ist ungültig.
STATUS_NOT_IMPLEMENTED
Diese Routine wird auf dieser Plattform nicht unterstützt.
STATUS_UNSUCCESSFUL
Die Firmware hat einen unbekannten Fehler zurückgegeben.

Bemerkungen

Der Aufrufer erfordert die Systemumgebungsberechtigung (SE_SYSTEM_ENVIRONMENT_PRIVILEGE), um diese Routine zu verwenden.

System-Firmwareumgebungsvariablen enthalten Datenwerte, die zwischen der in der Hardwareplattform implementierten Startfirmwareumgebung und den Betriebssystemladeprogramme und anderer Software übergeben werden, die in der Firmwareumgebung ausgeführt werden. Weitere Informationen finden Sie in ExGetFirmwareEnvironmentVariable.

Wenn Sie einen Sicherungsdatenspeicher erstellen, können Sie die ExGetFirmwareEnvironmentVariable Routine verwenden, um alle Starteinstellungen für die Plattform zu speichern. Später können Sie ExSetFirmwareEnvironmentVariable verwenden, um diese Einstellungen bei Bedarf wiederherzustellen.

ExSetFirmwareEnvironmentVariable ist das Kernelmodusäquivalent der Win32-SetFirmwareEnvironmentVariable-Funktion.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar ab Windows 8.
Zielplattform- Universal
Header- wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- PASSIVE_LEVEL

Siehe auch

ExGetFirmwareEnvironmentVariable

SetFirmwareEnvironmentVariable

UNICODE_STRING