Метод IWbemServices::ExecMethod (wbemcli.h)
Метод IWbemServices::ExecMethod выполняет метод, экспортируемый объектом CIM. Вызов метода пересылается соответствующему поставщику, где он выполняется. Сведения и состояние возвращаются вызывающей, которая блокируется до завершения вызова.
Методы не реализуются непосредственно службой управления Windows, но экспортируются поставщиками методов. Для любого заданного класса CIM доступные методы и их параметры должны быть указаны в документации для соответствующего поставщика.
Дополнительные сведения о выполнении методов см. в разделе Вызов метода.
Синтаксис
HRESULT ExecMethod(
[in] const BSTR strObjectPath,
[in] const BSTR strMethodName,
[in] long lFlags,
[in] IWbemContext *pCtx,
[in] IWbemClassObject *pInParams,
[out] IWbemClassObject **ppOutParams,
[out] IWbemCallResult **ppCallResult
);
Параметры
[in] strObjectPath
Допустимая строка BSTR, содержащая путь к объекту объекта, для которого выполняется метод.
[in] strMethodName
Имя метода для объекта .
[in] lFlags
Для этого параметра можно задать значение 0, чтобы сделать этот вызов синхронным. Чтобы сделать этот вызов полусинхронным, задайте для lFlagsзначение WBEM_FLAG_RETURN_IMMEDIATELY, укажите допустимый указатель для параметра ppCallResult , и этот вызов возвращается немедленно. Дополнительные сведения см. в разделе Вызов метода.
[in] pCtx
Как правило, значение NULL; В противном случае это указатель на объект IWbemContext , который может использоваться поставщиком, выполняющим метод . Значения в объекте контекста должны быть указаны в документации для соответствующего поставщика. Дополнительные сведения об этом параметре см. в разделе Выполнение вызовов WMI.
[in] pInParams
Может иметь значение NULL , если для выполнения метода не требуются встроенные параметры. В противном случае это указывает на IWbemClassObject , содержащий свойства, действующие в качестве входящих параметров для выполнения метода. Содержимое объекта зависит от метода и является частью спецификации для соответствующего поставщика. Дополнительные сведения о создании входных параметров см. в разделе Создание объектов параметров в C++.
[out] ppOutParams
Если значение не равно NULL, получает указатель на исходящие параметры и возвращаемые значения для выполнения метода. Содержимое этого объекта зависит от метода и является частью спецификации для соответствующего поставщика. Вызывающий объект должен вызывать Release для возвращаемого объекта, если он больше не требуется.
[out] ppCallResult
Значение NULL не используется. Если указан параметр ppCallResult , ему необходимо задать значение NULL для записи. В этом случае вызов возвращается немедленно с WBEM_S_NO_ERROR. Параметр ppCallResult получает указатель на новый объект IWbemCallResult , который необходимо опрашивать, чтобы получить результат выполнения метода с помощью метода GetCallStatus . Параметры out для вызова доступны путем вызова IWbemCallResult::GetResultObject.
Возвращаемое значение
Этот метод возвращает HRESULT , указывающий состояние вызова метода. В следующем списке перечислены значения, содержащиеся в HRESULT.
В случае сбоя можно получить любые доступные сведения из функции COM GetErrorInfo.
Коды ошибок COM также могут возвращаться, если проблемы с сетью приводят к потере удаленного подключения к управлению Windows.
Комментарии
Если ppOutParams не равно NULL, клиент может определить тип возвращаемого значения метода, проверив свойство ReturnValue объекта, на который указывает ppOutParams.
Требования
Минимальная версия клиента | Windows Vista |
Минимальная версия сервера | Windows Server 2008 |
Целевая платформа | Windows |
Header | wbemcli.h (включая Wbemidl.h) |
Библиотека | Wbemuuid.lib |
DLL | Fastprox.dll; Esscli.dll; FrameDyn.dll; FrameDynOS.dll; Ntevt.dll; Stdprov.dll; Viewprov.dll; Wbemcomn.dll; Wbemcore.dll; Wbemess.dll; Wbemsvc.dll; Wmipicmp.dll; Wmidcprv.dll; Wmipjobj.dll; Wmiprvsd.dll |