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


Функция Put

Задает новое значение для именованного свойства.

Примечание

Этот интерфейс API предназначен только для внутреннего использования. Он не предназначен для использования из кода разработчика.

Синтаксис

HRESULT Put (
   [in] int               vFunc,
   [in] IWbemClassObject* ptr,
   [in] LPCWSTR           wszName,
   [in] LONG              lFlags,
   [in] VARIANT*          pVal,
   [in] CIMTYPE           vtType
);

Параметры

vFunc
[in] Этот параметр не используется.

ptr
[in] Указатель на экземпляр IWbemClassObject .

wszName
[in] Имя свойства. Этот параметр не может иметь значение null.

lFlags
[in] Зарезервировано. Этот параметр должен иметь значение 0.

pVal
[in] Указатель на допустимый VARIANT объект , который становится новым значением свойства. Если pVal имеет значение null или указывает на VARIANT тип VT_NULL, свойству присваивается значение null.

vtType
[in] Тип , VARIANT на который указывает pVal. Дополнительные сведения см. в разделе Примечания .

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

Следующие значения, возвращаемые этой функцией, определяются в файле заголовка WbemCli.h или их можно определить как константы в коде:

Константа Значение Описание
WBEM_E_FAILED 0x80041001 Произошел общий сбой.
WBEM_E_INVALID_PARAMETER 0x80041008 Один или несколько параметров недопустимы.
WBEM_E_INVALID_PROPERTY_TYPE 0x8004102a Тип свойства не распознан. Это значение возвращается при создании экземпляров класса, если класс уже существует.
WBEM_E_OUT_OF_MEMORY 0x80041006 Недостаточно памяти для выполнения операции.
WBEM_E_TYPE_MISMATCH 0x80041005 Для экземпляров: указывает, что pVal указывает на VARIANT объект с неправильным типом для свойства .
Для определений классов: свойство уже существует в родительском классе, и новый тип COM отличается от старого типа COM.
WBEM_S_NO_ERROR 0 Вызов функции выполнен успешно.

Комментарии

Эта функция создает оболочку для вызова метода IWbemClassObject::P ut .

Эта функция всегда перезаписывает текущее значение свойства новым значением. Если IWbemClassObject указывает на определение класса, Put создает или обновляет значение свойства. Если IWbemClassObject указывает на экземпляр CIM, Put обновляет только значение свойства; Put не может создать значение свойства.

Системное __CLASS свойство доступно для записи только во время создания класса, если его нельзя оставить пустым. Все остальные системные свойства доступны только для чтения.

Пользователь не может создавать свойства с именами, которые начинаются или заканчиваются символом подчеркивания ("_"). Он зарезервирован для системных классов и свойств.

Если свойство, заданное Put функцией, существует в родительском классе, значение свойства по умолчанию изменяется, если тип свойства не соответствует типу родительского класса. Если свойство не существует и не является несоответствием типов, создается свойство .

vtType Используйте параметр только при создании новых свойств в определении класса CIM и pVal имеет null значение или указывает на VARIANT тип VT_NULL. В этом случае vType параметр указывает тип CIM свойства . Во всех остальных случаях vtType должно быть 0. vtType Также должен иметь значение 0, если базовый объект является экземпляром (даже если Val имеет значение null), так как тип свойства является фиксированным и не может быть изменен.

Пример

Пример см. в статье Метод IWbemClassObject::P ut .

Требования

Платформы: см. раздел Требования к системе.

Заголовка: WMINet_Utils.idl

платформа .NET Framework версии: доступно с версии 4.7.2.

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