Функция ExSetFirmwareEnvironmentVariable (wdm.h)

Подпрограмма ExSetFirmwareEnvironmentVariable задает значение указанной переменной среды встроенного ПО системы.

Синтаксис

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

Параметры

[in] VariableName

Указатель на структуру UNICODE_STRING , содержащую имя указанной переменной среды.

[in] VendorGuid

Указатель на GUID, определяющий поставщика, связанного с указанной переменной среды. Переменные среды группируются в пространства имен на основе идентификаторов GUID поставщика. Некоторые аппаратные платформы могут не поддерживать guid поставщика. На этих платформах все переменные группируются в одно, общее пространство имен, а параметр VendorGuid игнорируется.

[in] Value

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

[in] ValueLength

Размер (в байтах) значения данных, содержащегося в буфере значений.

[in] Attributes

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

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

ExSetFirmwareEnvironmentVariable возвращает STATUS_SUCCESS в случае успешного выполнения. Возможные возвращаемые значения включают следующие коды состояния ошибок.

Код возврата Описание
STATUS_INSUFFICIENT_RESOURCES
Доступные системные ресурсы недостаточно для выполнения запрошенной операции.
STATUS_INVALID_PARAMETER
Один из параметров недопустим.
STATUS_NOT_IMPLEMENTED
Эта подпрограмма не поддерживается на этой платформе.
STATUS_UNSUCCESSFUL
Встроенное ПО вернуло нераспознанную ошибку.

Комментарии

Вызывающий объект требует привилегии системной среды (SE_SYSTEM_ENVIRONMENT_PRIVILEGE) для использования этой подпрограммы.

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

При создании хранилища данных резервной копии можно использовать подпрограмму ExGetFirmwareEnvironmentVariable для сохранения всех параметров загрузки для платформы. Позже вы можете использовать ExSetFirmwareEnvironmentVariable для восстановления этих параметров при необходимости.

ExSetFirmwareEnvironmentVariable — это эквивалент функции Win32 SetFirmwareEnvironmentVariable в режиме ядра.

Требования

   
Минимальная версия клиента Доступно начиная с Windows 8.
Целевая платформа Универсальное
Заголовок wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

См. также раздел

ExGetFirmwareEnvironmentVariable

SetFirmwareEnvironmentVariable

UNICODE_STRING