Метод IWbemCallResult::GetCallStatus (wbemcli.h)
Метод IWbemCallResult::GetCallStatus возвращает пользователю состояние текущего незавершенного полусинхронного вызова. Когда этот вызов возвращает WBEM_S_NO_ERROR, исходный вызов метода IWbemServices завершается.
Синтаксис
HRESULT GetCallStatus(
[in] long lTimeout,
[out] long *plStatus
);
Параметры
[in] lTimeout
Указывает максимальное время в миллисекундах, которое этот вызов блокирует перед возвратом. При использовании константы WBEM_INFINITE (0xFFFFFFFF) вызов блокируется до завершения исходного полусинхронного вызова метода IWbemServices . Если используется значение 0 (ноль), вызов немедленно возвращает состояние вызова.
[out] plStatus
Если WBEM_S_NO_ERROR возвращает в HRESULT этот метод, этот параметр получит состояние конечного результата вызова одного из методов IWbemServices : OpenNamespace, PutInstance, PutClass, GetObject, DeleteInstance, DeleteClass или ExecMethod. При ошибке значение, указанное plStatus , не будет использоваться.
Возвращаемое значение
Этот метод возвращает HRESULT , указывающий состояние вызова метода. В следующем списке перечислены значения, содержащиеся в HRESULT.
Комментарии
При возникновении ошибки можно вызвать функцию COM GetErrorInfo , чтобы получить дополнительные сведения об ошибке. Коды ошибок COM также могут быть возвращены, если проблемы с сетью приводят к потере удаленного подключения к управлению Windows.
После полусинхронного вызова метода IWbemServices можно в любое время вызвать GetCallStatus , чтобы определить, завершен ли вызов. После того как GetCallStatus возвратит WBEM_S_NO_ERROR, что указывает на завершение исходной операции IWbemServices , вызовы других методов IWbemCallResult могут потребоваться для получения результата вызова в соответствии со следующими правилами:
- Для IWbemServices::OpenNamespace необходимо вызвать метод GetResultServices , чтобы получить новый указатель IWbemServices .
- Для IWbemServices::P utInstance необходимо вызвать метод GetResultString , чтобы получить путь к объекту, назначенный объекту .
- Для IWbemServices::GetObject необходимо вызвать метод GetResultObject , чтобы получить объект .
- Для методов IWbemServicesDeleteInstance, DeleteClass и ExecMethod метод GetCallStatus является единственным вызовом, который возвращает сведения об этих операциях.
Требования
Минимальная версия клиента | Windows Vista |
Минимальная версия сервера | Windows Server 2008 |
Целевая платформа | Windows |
Header | wbemcli.h (включая Wbemidl.h) |