Поделиться через


Функция 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