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

Подпрограмма IoSetDeviceInterfacePropertyData изменяет текущее значение свойства интерфейса устройства.

Синтаксис

NTSTATUS IoSetDeviceInterfacePropertyData(
  [in]           PUNICODE_STRING  SymbolicLinkName,
  [in]           const DEVPROPKEY *PropertyKey,
  [in]           LCID             Lcid,
  [in]           ULONG            Flags,
  [in]           DEVPROPTYPE      Type,
  [in]           ULONG            Size,
  [in, optional] PVOID            Data
);

Параметры

[in] SymbolicLinkName

Указатель на строку, которая идентифицирует экземпляр интерфейса устройства. Эта строка была получена из предыдущего вызова процедуры IoGetDeviceInterfaces, IoGetDeviceInterfaceAlias или IoRegisterDeviceInterface .

[in] PropertyKey

Указатель на структуру DEVPROPKEY , содержащую ключ свойства интерфейса устройства.

[in] Lcid

Указывает идентификатор языкового стандарта. Присвойте этому параметру значение LCID для конкретного языка или LOCALE_NEUTRAL. Код языка LOCALE_NEUTRAL указывает, что свойство не зависит от языка (т. е. не относится к какому-либо языку). Не устанавливайте для этого параметра значение LOCALE_SYSTEM_DEFAULT или LOCALE_USER_DEFAULT. Дополнительные сведения о значениях LCID для конкретного языка см. в разделе Структура LCID.

[in] Flags

Задайте для этого параметра значение PLUGPLAY_PROPERTY_PERSISTENT , должно ли значение свойства, заданное этой подпрограммой, сохраняться при перезагрузке компьютера. В противном случае задайте для флагов нулевое значение.

[in] Type

Присвойте этому параметру значение DEVPROPTYPE , указывающее тип данных, предоставляемых в буфере данных .

[in] Size

Указывает размер (в байтах) буфера, на который указывает data .

[in, optional] Data

Указатель на данные свойств интерфейса устройства. Присвойте этому параметру значение NULL , чтобы удалить указанное свойство. Если значение Data не равно NULL, подпрограмма сохраняет внутреннюю копию значения свойства. Буфер, на который указывает data , не должен оставаться действительным после возврата вызова.

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

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

Код возврата Описание
STATUS_UNSUCCESSFUL Указанное значение LCID недопустимо.
STATUS_NOT_IMPLEMENTED Указанное свойство не поддерживается.

Комментарии

Драйверы в режиме ядра используют подпрограмму IoSetDeviceInterfacePropertyData для изменения свойств интерфейса устройства, определенных как часть единой модели свойств устройства. Дополнительные сведения о свойствах интерфейса устройства см. в разделе Свойства устройства.

Драйверы могут использовать подпрограмму IoGetDeviceInterfacePropertyData для получения текущего значения свойства интерфейса устройства.

Вызывающие объект IoSetDeviceInterfacePropertyData должны выполняться в среде IRQL <= APC_LEVEL в контексте системного потока.

Требования

Требование Значение
Минимальная версия клиента Доступно для Windows 8 и более поздних версий Windows.
Целевая платформа Универсальное
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

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

DEVPROPKEY

DEVPROPTYPE

IoGetDeviceInterfacePropertyData