WMI コレクションへのアクセス

コレクションは、反復を実行できる一連のオブジェクトに対して統一されたインタフェースを提供する、標準のオートメーションの概念です。 WMI 用のスクリプト API では、コレクション パラダイムに準拠する多数のインターフェイスが公開されています。 いずれの場合も、Item メソッドを使用して、値を含む文字列を使用して要素を識別します。

SWbemPropertySetSWbemQualifierSet、および SWbemMethodSet コレクションは、主にスキーマの変更に使用されます。 SWbemObjectSet オブジェクトには、SWbemServices.InstancesOfSWbemObject.Associators_ などの呼び出しによって取得された WMI オブジェクト (Win32_LogicalDisk インスタンスなど) が含まれます。 SWbemRefresher オブジェクトには、WMI クラスのインスタンスのみを含めることができます。 SWbemNamedValueSet オブジェクトには、WMI オブジェクト、またはプロバイダーがメソッド呼び出しに必要なその他の種類のデータを含めることができます。

注意

以下のトピックは、主に VBScript 用に書かれたものです。 C# では、標準の IEnumerable インターフェイスを使用してオブジェクトを照合および列挙します。 これに対し、PowerShell では通常、戻り値に複数の結果が含まれる場合は常に暗黙的なオブジェクト コレクションが使用されます。

 

次の表に、WMI 用のスクリプト API のコレクションと、各コレクションの要素およびパラメータをリストしています。

コレクション 要素 Item() パラメータ
SWbemObjectSet SWbemObject オブジェクトのパス
SWbemPropertySet SWbemProperty プロパティ名
SWbemQualifierSet SWbemQualifier 修飾子名
SWbemMethodSet SWbemMethod メソッド名
SWbemNamedValueSet SWbemNamedValue 値の名前
SWbemPrivilegeSet SWbemPrivilege 特権名
SWbemRefresher SWbemRefreshableItem SWbemRefresher オブジェクト内の項目のインデックス

 

コレクションの項目の追加と削除の詳細と例については、コレクションからの単一項目の削除およびコレクションからの複数の項目の削除に関する記事を参照してください。 クラスの操作の詳細については、「クラスとインスタンスの情報の操作」を参照してください。