ManagementObjectSearcher クラス
指定したクエリに基づいて、管理オブジェクトのコレクションを取得します。
このクラスは、管理情報を取得するときに一般的に使用されるエントリ ポイントの 1 つです。たとえば、ディスク ドライブ、ネットワーク アダプタ、システム上のプロセスやその他の管理オブジェクトのすべてを列挙したり、有効なすべてのネットワーク接続、停止しているサービスなどを問い合わせたりするために使用できます。
インスタンス化されたとき、このクラスのインスタンスは、入力として、 ObjectQuery またはその派生クラスで表される WMI クエリを受け取ります。また、任意で、クエリ実行先の WMI 名前空間を表す ManagementScope を受け取ることもできます。さらに、 EnumerationOptions オブジェクトで追加の高度なオプションを受け取ることもできます。このオブジェクトの Get() メソッドが呼び出されると、ManagementObjectSearcher は指定したスコープの指定したクエリを実行して、 ManagementObjectCollection のクエリに一致する管理オブジェクトのコレクションを返します。
この型のすべてのメンバの一覧については、ManagementObjectSearcher メンバ を参照してください。
System.Object
System.MarshalByRefObject
System.ComponentModel.Component
System.Management.ManagementObjectSearcher
Public Class ManagementObjectSearcher
Inherits Component
[C#]
public class ManagementObjectSearcher : Component
[C++]
public __gc class ManagementObjectSearcher : public Component
[JScript]
public class ManagementObjectSearcher extends Component
スレッドセーフ
この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。
使用例
using System;
using System.Management;
// This sample demonstrates perform a query using
// ManagementObjectSearcher object.
class Sample_ManagementObjectSearcher
{
public static int Main(string[] args) {
ManagementObjectSearcher searcher = new
ManagementObjectSearcher("select * from win32_share");
foreach (ManagementObject share in searcher.Get()) {
Console.WriteLine("Share = " + share["Name"]);
}
return 0;
}
}
[Visual Basic]
Imports System
Imports System.Management
' This sample demonstrates perform a query using
' ManagementObjectSearcher object.
Class Sample_ManagementObjectSearcher
Overloads Public Shared Function Main(args() As String) As Integer
Dim searcher As New ManagementObjectSearcher("SELECT * FROM Win32_Share")
Dim share As ManagementObject
For Each share In searcher.Get()
Console.WriteLine("Share = " & share("Name").ToString())
Next share
Return 0
End Function
End Class
[C++, JScript] C++ および JScript のサンプルはありません。Visual Basic および C# のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
名前空間: System.Management
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
アセンブリ: System.Management (System.Management.dll 内)