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


Функция PutMethod

Создает метод.

Примечание

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

Синтаксис

HRESULT PutMethod (
   [in] int                vFunc,
   [in] IWbemClassObject*  ptr,
   [in] LPCWSTR            wszName,
   [in] LONG               lFlags,
   [in] IWbemClassObject*  pInSignature,
   [in] IWbemClassObject*  pOutSignature
);

Параметры

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

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

wszName
[in] Имя создаваемого метода.

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

pSignatureIn
[in] Указатель на копию системного класса __Parameters , содержащую in параметры метода . Этот параметр игнорируется, если задано значение null.

pSignatureOut
[in] Указатель на копию системного класса __Parameters , содержащую out параметры метода . Этот параметр игнорируется, если задано значение null.

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

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

Константа Значение Описание
WBEM_E_INVALID_PARAMETER 0x80041008 Один или несколько параметров недопустимы.
WBEM_E_INVALID_DUPLICATE_PARAMETER 0x80041043 Параметр [in, out] метода, указанный в объектах pInSignature и pOutSignature , имеет разные квалификаторы.
WBEM_E_MISSING_PARAMETER_ID 0x80041036 В параметре метода отсутствует спецификация квалификатора идентификатора .
WBEM_E_NONCONSECUTIVE_PARAMETER_IDS 0x80041038 Ряд идентификаторов, назначенный параметрам метода, не является последовательными или не начинается с 0.
WBEM_E_PARAMETER_ID_ON_RETVAL 0x80041039 Возвращаемое значение метода имеет квалификатор идентификатора .
WBEM_E_PROPAGATED_METHOD 0x80041034 Предпринята попытка повторного использования существующего имени метода из родительского класса, и сигнатуры не совпадали.
WBEM_S_NO_ERROR 0 Вызов функции выполнен успешно.

Комментарии

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

Этот вызов метода поддерживается только в том случае, если ptr является определением класса CIM. Управление методами недоступно в указателях IWbemClassObject , указывающих на экземпляры CIM.

Пользователи не могут создавать методы с именами, которые начинаются или заканчиваются символом подчеркивания. Он зарезервирован для системных классов и свойств.

Для метода in параметры и out описываются как свойства в объектах IWbemClassObject .

Параметр [in/out] можно определить, добавив одно и то же свойство к обоим объектам, на которые pInSignature указывают параметры и pOutSignature . В этом случае свойства используют одно и то же значение квалификатора идентификатора .

Каждое свойство в объекте класса __Parameters , отличном от ReturnValue , должно иметь квалификатор идентификатора , отсчитываемое от нуля числовое значение, определяющее порядок, в котором отображаются параметры. Ни один из двух параметров не может иметь одинаковое значение идентификатора , и значение идентификатора не может быть пропущено. Если возникает любое из условий PutMethod , функция возвращает WBEM_E_NONCONSECUTIVE_PARAMETER_IDS.

Пример

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

Требования

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

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

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

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