Session.Enumerate メソッド
テーブル、データ収集、またはログ リソースを列挙します。 クエリを作成するには、列挙体に フィルター パラメーターと 方言 パラメーターを含めます。 ResourceLocator オブジェクトを使用してクエリを作成することもできます。 詳細については、「 リソースのすべてのインスタンスの列挙または一覧表示」を参照してください。
構文
Session.Enumerate( _
ByVal resourceUri, _
[ ByVal filter ], _
[ ByVal dialect ], _
[ ByVal flags ] _
)
パラメーター
-
resourceUri [in]
-
取得するリソースの識別子。
このパラメーターには、次のいずれかを含めることができます。
リソースの URI。
strResourceUri = "http://schemas.microsoft.com/" _ & "wbem/wsman/1/wmi/root/cimv2/Win32_Service"
ResourceLocator オブジェクト。
WS-Management プロトコル標準で説明されている WS-Addressing エンドポイント参照。 WS-Management Protocol のパブリック仕様の詳細については、「管理仕様のインデックス ページ」を参照してください。
-
filter [in, optional]
-
列挙によって返されるリソース内の項目を定義するフィルター。 リソースが列挙されると、フィルター条件に一致する項目のみが返されます。 列挙に フィルター パラメーターと 言語 パラメーターを含めると、列挙型がクエリに変換されます。 例については、「 リソースの特定のインスタンスのクエリ」を参照してください。
resourceURI パラメーターに ResourceLocator オブジェクトがある場合は、このパラメーターを使用しないでください。
-
方言 [in, 省略可能]
-
フィルターで使用される言語。 WQL は、WMI で使用される SQL のサブセットであり、サポートされている唯一の言語です。
resourceURI パラメーターに ResourceLocator オブジェクトがある場合は、このパラメーターを使用しないでください。
-
flags [in, optional]
-
__WSManEnumFlags列挙体にフラグを含む必要があるパラメーター。 詳細については、「 列挙定数」を参照してください。
戻り値
列挙体の結果を格納する 列挙子 オブジェクト。
注釈
列挙中のネットワーク呼び出しの制限の詳細については、 BatchItems プロパティを参照してください。
フラグに 列挙定数WSManFlagHierarchyDeepBasePropsOnly または WSManFlagHierarchyShallow が含まれている場合、Windows リモート管理サービスはエラー コード ERROR_WSMAN_POLYMORPHISM_MODE_UNSUPPORTEDを返します。
フィルターを指定する場合は、リソースのスキーマに関して有効なドキュメントである必要があります。 言語パラメーターは省略可能です。 ただし、フィルター文字列が で<始まるが XML フラグメントでない場合は、dialect パラメーターを含めるか、flags パラメーターに WSManFlagNonXmlText フラグを設定します。 詳細については、「 列挙定数」を参照してください。
対応する C++ メソッドは IWSManSession::Enumerate です。
例
次の VBScript コード例では、完全修飾ドメイン名 ( servername.domain.com ) で指定されたリモート コンピューター上のWin32_LogicalDisk インスタンスを列挙します。 列挙オブジェクトを解放すると、保留中の列挙要求がクリアされます。 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_LogicalDisk"
Set objResultSet = objSession.Enumerate( strResource )
While Not objResultSet.AtEndOfStream
DisplayOutput( objResultSet.ReadItem )
Wend
'****************************************************
' 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 |
Header |
|
IDL |
|
ライブラリ |
|
[DLL] |
|