Функция IoWMISetSingleItem (wdm.h)
Подпрограмма IoWMISetSingleItem задает одно свойство в экземпляре блока данных, которое соответствует указанному классу WMI и имени экземпляра.
NTSTATUS IoWMISetSingleItem(
[in] PVOID DataBlockObject,
[in] PUNICODE_STRING InstanceName,
[in] ULONG DataItemId,
[in] ULONG Version,
[in] ULONG ValueBufferSize,
[in] PVOID ValueBuffer
);
[in] DataBlockObject
Указатель на объект блока данных WMI. Вызывающий объект открывает объект блока данных для класса WMI с помощью подпрограммы IoWMIOpenBlock. Объект должен быть открыт с помощью права доступа WMIGUID_SET.
[in] InstanceName
Указывает имя экземпляра блока данных. Это значение соответствует значению свойства InstanceName для блока.
[in] DataItemId
Указывает идентификатор элемента данных для заданного свойства. Значение этого параметра соответствует значению, объявленному в квалификаторе WmiDataId WmiDataId для свойства.
[in] Version
Зарезервировано для дальнейшего использования. Вызывающие элементы должны задать для этого параметра значение нулю.
[in] ValueBufferSize
Задает размер буфера, передаваемого в параметре ValueBuffer.
[in] ValueBuffer
Указатель на буфер, содержащий новое значение для свойства, указанного параметром DataItemId.
Подпрограмма возвращает код NTSTATUS. Возможные возвращаемые значения:
Возвращаемый код | Описание |
---|---|
|
Операция завершилась успешно. Значение свойства в экземпляре блока данных WMI обновляется до содержимого буфера, на который указывает параметр ValueBuffer. |
|
Драйверы не реализуют класс WMI. |
|
Драйвер не реализует экземпляр блока данных WMI с свойством InstanceName равным значению, указанному в параметре InstanceName. |
|
Класс WMI не содержит свойство с идентификатором элемента данных, равным значению DataItemId. |
|
Идентификатор элемента данных в блоке данных доступен только для чтения. |
|
Драйвер, реализующий экземпляр блока данных WMI, не может обновить свойство, указанное DataItemId. |
IoWMISetSingleItem определяет, какие драйверы могут поддерживать указанный класс WMI и имя экземпляра. Он выдает запрос IRP_MN_CHANGE_SINGLE_ITEM каждому такому драйверу. Драйвер, экспортируемый экземпляр блока данных с соответствующими свойствами InstanceName, обновляет указанное свойство в экземпляре блока данных.
Драйверы также могут использовать IoWMISetSingleInstance для одновременного обновления каждого свойства экземпляра класса WMI.
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно в Windows XP и более поздних версиях операционной системы Windows. |
целевая платформа | Всеобщий |
заголовка | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
библиотеки | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |