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


Метод Enumerator.ReadItem

Извлекает элемент из ресурса и возвращает XML-представление элемента.

Синтаксис

Enumerator.ReadItem( _
  ByVal resource _
)

Параметры

resource

URI элемента.

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

XML-представление элемента.

Комментарии

Чтобы ограничить количество считываемых элементов, задайте свойство Session.BatchItems .

Обратите внимание, что освобождение объекта перечисления очищает все ожидающие запросы перечисления.

Метод Session.Enumerate не получает коллекцию так, как запрос WMI, например SELECT * from Win32_LogicalDisk, возвращает коллекцию в SWbemObjectSet. Чтобы прочитать файл в виде текстового потока, создайте объект TextStream со скриптом и вызовите метод TextStream.Readline для чтения каждой строки файла. Аналогичным образом вызывается метод Session.Enumerate для получения объекта Enumerator , а затем вызывается метод Enumerator.ReadItem . Как и при чтении из текстового файла, можно проверка свойство Enumerator.AtEndOfStream, чтобы проверка, достигли ли вы конца элементов данных.

Примеры

В следующем примере VBScript вызывается метод Session.Enumerate для получения списка запланированных заданий. Подпрограмма DisplayOutput использует xml-файл преобразования программы командной строки Winrm (WsmTxt.xsl) для вывода данных в табличном виде.

Const RemoteComputer = "servername.domain.com"

Set objWsman = CreateObject( "WSMan.Automation" )
Set objSession = objWsman.CreateSession( "https://" & RemoteComputer )

strResource = "http://schemas.microsoft.com/wbem/wsman/1/" &_
              "wmi/root/cimv2/Win32_ScheduledJob"

Set objResultSet = objSession.Enumerate( strResource )
NumOfJobs = 0

While Not objResultSet.AtEndOfStream
    NumOfJobs = NumOfJobs + 1
    DisplayOutput( objResultSet.ReadItem ) 
Wend

Wscript.Echo "There are " & NumOfJobs & " jobs scheduled."

'****************************************************
' Displays WinRM XML message using built-in XSL
'****************************************************
Sub DisplayOutput( strWinRMXml )
    Dim xmlFile, xslFile
    Set xmlFile = CreateObject( "MSXml2.DOMDocument.3.0" ) 
    Set xslFile = CreateObject( "MSXml2.DOMDocument.3.0" )
    xmlFile.LoadXml( strWinRMXml )
    xslFile.Load( "WsmTxt.xsl" )
    Wscript.Echo xmlFile.TransformNode( xslFile ) 
End Sub

Требования

Требование Значение
Минимальная версия клиента
Windows Vista
Минимальная версия сервера
Windows Server 2008
Заголовок
WSManDisp.h
IDL
WSManDisp.idl
Библиотека
WSManDisp.tlb
DLL
WSMAuto.dll

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

Перечислитель

Перечисление или перечисление всех экземпляров ресурса