Выполнение асинхронного запроса Configuration Manager с помощью WMI
В Configuration Manager выполняется синхронный запрос для объектов Configuration Manager путем вызова метода ExecQueryAsync объекта SWbemServices и реализации метода приемника для обработки результатов запроса.
Чтобы обработать каждый возвращаемый объект, создайте подпрограмму события objWbemSink.OnObjectReady . Чтобы получать уведомления о завершении запроса, создайте подпрограмму события objWbemSink.OnCompleted .
Примечание.
Отложенные свойства не возвращаются в асинхронных запросах. Дополнительные сведения см. в разделе Чтение отложенных свойств с помощью WMI.
Выполнение асинхронного запроса
Настройте подключение к поставщику SMS. Дополнительные сведения см. в статье Подключение к поставщику SMS в Configuration Manager с помощью WMI.
Создайте подпрограмму OnObjectReady для обработки объектов с помощью запроса.
Создайте подпрограмму OnCompleted для обработки завершения запроса.
Используя объект SWbemServices, полученный на первом шаге, используйте объект ExecQueryAsync для асинхронного запроса объектов Configuration Manager.
Пример
Следующий пример кода VBScript асинхронно запрашивает все объекты SMS_Collection .
Сведения о вызове примера кода см. в разделе Вызов фрагментов кода Configuration Manager.
Dim bdone
Sub QueryCollection(connection)
Dim sink
bdone = False
Set sink = WScript.CreateObject("wbemscripting.swbemsink","sink_")
' Query for all collections.
connection.ExecQueryAsync sink, "select * from SMS_Collection"
' Wait until all instances are returned.
While Not bdone
wscript.sleep 1000
Wend
End Sub
' The sink subroutine to handle the OnObjectReady
' event. This is called as each object returns.
Sub sink_OnObjectReady(collection, octx)
WScript.Echo "CollectionID: " + collection.CollectionID
WScript.Echo "Name: " + collection.Name
Wscript.Echo
End Sub
' The sink subroutine to handle the OnCompleted event.
' This is called when all the objects are returned.
' The oErr parameter obtains an SWbemLastError object,
' if available from the provider.
Sub sink_OnCompleted(HResult, oErr, oCtx)
WScript.Echo "All collections returned"
bdone = true
End Sub
Этот пример метода имеет следующие параметры:
Параметр | Тип | Описание |
---|---|---|
connection |
SWbemServices | Допустимое подключение к поставщику SMS. |
См. также
Инструментарий управления Windows (WMI)
Общие сведения об объектах. Вызов метода класса объектов Configuration Manager с помощью WMI
Подключение к поставщику SMS в Configuration Manager с помощью WMI
Создание объекта Configuration Manager с помощью WMI
Удаление объекта Configuration Manager с помощью WMI
Изменение объекта Configuration Manager с помощью WMI
Выполнение синхронного запроса Configuration Manager с помощью WMI
Чтение объекта Configuration Manager с помощью WMI
Чтение отложенных свойств с помощью WMI
Configuration Manager расширенный язык запросов WMI
Результирующие наборы Configuration Manager
специальные запросы Configuration Manager
Сведения о запросах