SWbemServices.Get メソッド
SWbemServices オブジェクトの Get メソッドは、オブジェクト パスに基づいて、クラス定義またはインスタンスであるオブジェクトを取得します。 このメソッドは、現在の SWbemServices オブジェクトに関連付けられている名前空間からのみオブジェクトを取得します。
このメソッドは、同期モードで呼び出されます。 詳細については、メソッドの呼び出しに関するページを参照してください。
この構文の説明については、「スクリプト API のドキュメント規則」を参照してください。
構文
objWbemObject = .Get( _
[ ByVal strObjectPath ], _
[ ByVal iFlags ], _
[ ByVal objWbemNamedValueSet ] _
)
パラメーター
-
strObjectPath [省略可能]
-
取得するオブジェクトのオブジェクト パスを含む文字列。 この値が空の場合、返される空のオブジェクトは新しいクラスになる可能性があります。 詳細については、「WMI オブジェクトの場所を説明する」を参照してください。
-
iFlags [省略可能]
-
クエリの動作を決定する整数。 このパラメーターには次の値を指定することができます。
-
wbemFlagUseAmendedQualifiers (131072 (0x20000))
-
WMI が基底クラス定義を使用してクラス変更データを返します。 修正修飾子の詳細については、「WMI クラス情報のローカライズ」を参照してください。
objWbemNamedValueSet [省略可能]
通常、これは未定義です。 そうでない場合、これは SWbemNamedValueSet オブジェクトであり、その要素は、要求を処理しているプロバイダーが使用できるコンテキスト情報を表します。 このような情報をサポートする、または必要とするプロバイダーは、認識された値名、値のデータ型、許可された値、セマンティクスを文書化する必要があります。
戻り値
成功した場合、このメソッドは、要求されたオブジェクトを表す SWbemObject オブジェクトを返します。
エラー コード
Get メソッドが完了すると、Err オブジェクトに次の一覧のいずれかのエラー コードが含まれる場合があります。
-
wbemErrAccessDenied - 2147749891 (0x80041003)
-
現在のユーザーにはオブジェクトにアクセスする権限がありません。
-
wbemErrFailed - 2147749889 (0x80041001)
-
未定義のエラーが発生しました。
-
wbemErrInvalidParameter - 2147749896 (0x80041008)
-
指定されたパラメーターが無効です。
-
wbemErrInvalidObjectPath - 2147749946 (0x8004103A)
-
指定されたパスが無効です。
-
wbemErrNotFound - 2147749890 (0x80041002)
-
要求されたオブジェクトが見つかりませんでした。
-
wbemErrOutOfMemory - 2147749894 (0x80041006)
-
操作を完了させるための十分なメモリがありません。
解説
ExecQuery および InstancesOf メソッドとは異なり、Get メソッドは常に、WMI マネージド リソースの特定のインスタンスを表す SWbemObject を返します。 Get メソッドを使用して WMI マネージド リソースの特定のインスタンスを取得するには、次のスクリプトに示すように、メソッドにオブジェクト パスを渡して、取得するインスタンスを Get に指示する必要があります。
strComputer = "."
Set objSWbemServices = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set objSWbemObject = objSWbemServices.Get("Win32_Service.Name='Messenger'")
Wscript.Echo "Name: " & objSWbemObject.Name & vbCrLf & _
"Display Name: " & objSWbemObject.DisplayName & vbCrLf & _
"Start Mode: " & objSWbemObject.StartMode & vbCrLf & _
"State: " & objSWbemObject.State
このメソッドを使用すると、実行中の WMI インストールに関するバージョン情報を含む __CIMOMIdentification などの"シングルトン" オブジェクトを取得できます。
CIM Studio などの表示ツールを使用してリポジトリを調べて、新しいクラスとインスタンスが表示されることを確認できます。 リポジトリからクラスとインスタンスを削除する例については、「SWbemServices.Delete」または「SWbemObject.Delete_」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント |
Windows Vista |
サポートされている最小のサーバー |
Windows Server 2008 |
Header |
|
タイプ ライブラリ |
|
[DLL] |
|
CLSID |
CLSID_SWbemServices |
IID |
IID_ISWbemServices |