Enumerator.ReadItem メソッド
リソースから項目を取得し、アイテムの XML 表現を返します。
構文
Enumerator.ReadItem( _
ByVal resource _
)
パラメーター
-
resource
-
項目の URI。
戻り値
アイテムの XML 表現。
解説
読み取るアイテムの数を制限するには、 Session.BatchItems プロパティを 設定します。
列挙オブジェクトを解放すると、保留中の列挙要求がクリーンアップされることに注意してください。
Session.Enumerate メソッドは、 などの SELECT * from Win32_LogicalDisk
WMI クエリが SWbemObjectSet 内のコレクションを返すのと同じ方法でコレクションを取得しません。 ファイルをテキスト ストリームとして読み取る場合は、スクリプト TextStream オブジェクトを作成し、 TextStream.Readline メソッドを呼び出してファイルの各行を読み取ります。 同様の方法で、 Session.Enumerate メソッドを呼び出して Enumerator オブジェクトを取得し、 Enumerator.ReadItem メソッドを呼び出します。 テキスト ファイルから読み取る場合と同様に、Enumerator.AtEndOfStream プロパティをチェックして、データ項目の末尾に達したかどうかをチェックできます。
例
次の VBScript の例では 、Session.Enumerate メソッドを呼び出して、スケジュールされたジョブの一覧を取得します。 DisplayOutput サブルーチンは、Winrm コマンド ライン ツール XML 変換ファイル (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 |
ヘッダー |
|
IDL |
|
ライブラリ |
|
[DLL] |
|