ManagementClass.GetInstances メソッド

定義

クラスのすべてのインスタンスのコレクションを返します。Returns the collection of all instances of the class.

オーバーロード

GetInstances()

クラスのすべてのインスタンスのコレクションを返します。Returns the collection of all instances of the class.

GetInstances(EnumerationOptions)

指定したオプションを使用して、クラスのすべてのインスタンスのコレクションを返します。Returns the collection of all instances of the class using the specified options.

GetInstances(ManagementOperationObserver)

クラスのすべてのインスタンスのコレクションを非同期的に返します。Returns the collection of all instances of the class, asynchronously.

GetInstances(ManagementOperationObserver, EnumerationOptions)

指定したオプションを使用して、クラスのすべてのインスタンスのコレクションを非同期的に返します。Returns the collection of all instances of the class, asynchronously, using the specified options.

注釈

.NET Framework セキュリティ.NET Framework Security

直前の呼び出し元に対する完全な信頼。Full trust for the immediate caller. このメンバーは、部分的に信頼されているコードから使用することはできません。This member cannot be used by partially trusted code. 詳細については、「部分信頼コードからのライブラリの使用」を参照してください。For more information, see Using Libraries from Partially Trusted Code.

GetInstances()

クラスのすべてのインスタンスのコレクションを返します。Returns the collection of all instances of the class.

public:
 System::Management::ManagementObjectCollection ^ GetInstances();
public System.Management.ManagementObjectCollection GetInstances ();
member this.GetInstances : unit -> System.Management.ManagementObjectCollection
Public Function GetInstances () As ManagementObjectCollection

戻り値

クラスのインスタンスを表す ManagementObject オブジェクトのコレクション。A collection of the ManagementObject objects representing the instances of the class.

次の例は、ManagementClass コンストラクターを使用して ManagementClass 変数を初期化し、WMI クラスのすべてのインスタンスを取得する方法を示しています。The following example shows how to initialize a ManagementClass variable with a ManagementClass constructor and then get all the instances of a WMI class.

using System;
using System.Management;

public class Sample 
{    
    public static void Main() 
    {
        ManagementClass c = new ManagementClass("Win32_Process");
        foreach (ManagementObject o in c.GetInstances())
            Console.WriteLine(
                "Next instance of Win32_Process : {0}", o["Name"]);

    }
}
Imports System.Management

Class Sample

    Public Overloads Shared Function _
    Main(ByVal args() As String) As Integer

        Dim c As New ManagementClass("Win32_Process")
        Dim o As ManagementObject
        For Each o In c.GetInstances()
            Console.WriteLine( _
                "Next instance of Win32_Process : {0}", o("Name"))
        Next o

    End Function
End Class

注釈

.NET Framework セキュリティ.NET Framework Security

直前の呼び出し元に対する完全な信頼。Full trust for the immediate caller. このメンバーは、部分的に信頼されているコードから使用することはできません。This member cannot be used by partially trusted code. 詳細については、「部分信頼コードからのライブラリの使用」を参照してください。For more information, see Using Libraries from Partially Trusted Code.

GetInstances(EnumerationOptions)

指定したオプションを使用して、クラスのすべてのインスタンスのコレクションを返します。Returns the collection of all instances of the class using the specified options.

public:
 System::Management::ManagementObjectCollection ^ GetInstances(System::Management::EnumerationOptions ^ options);
public System.Management.ManagementObjectCollection GetInstances (System.Management.EnumerationOptions options);
member this.GetInstances : System.Management.EnumerationOptions -> System.Management.ManagementObjectCollection
Public Function GetInstances (options As EnumerationOptions) As ManagementObjectCollection

パラメーター

options
EnumerationOptions

追加の操作オプション。The additional operation options.

戻り値

指定したオプションに従って、クラスのインスタンスを表す ManagementObject オブジェクトのコレクション。A collection of the ManagementObject objects representing the instances of the class, according to the specified options.

次の例は、ManagementClass コンストラクターを使用して ManagementClass 変数を初期化し、WMI クラスとそのサブクラスのすべてのインスタンスを取得する方法を示しています。The following example shows how to initialize a ManagementClass variable with a ManagementClass constructor and then get all the instances of a WMI class and its subclasses.

using System;
using System.Management;

public class Sample 
{    
    public static void Main() 
    {
        EnumerationOptions opt = new EnumerationOptions();
        // Will enumerate instances of the given class and any subclasses.
        opt.EnumerateDeep = true;
        ManagementClass c = new ManagementClass("CIM_Service");
        foreach (ManagementObject o in c.GetInstances(opt))
            Console.WriteLine(o["Name"]);

    }
}
Imports System.Management

Class Sample

    Public Overloads Shared Function _
    Main(ByVal args() As String) As Integer

        Dim opt As New EnumerationOptions
        ' Will enumerate instances of the given class and any subclasses.
        opt.EnumerateDeep = True
        Dim mngmtClass As New ManagementClass("CIM_Service")
        Dim o As ManagementObject
        For Each o In mngmtClass.GetInstances(opt)
            Console.WriteLine(o("Name"))
        Next o

    End Function
End Class

注釈

.NET Framework セキュリティ.NET Framework Security

直前の呼び出し元に対する完全な信頼。Full trust for the immediate caller. このメンバーは、部分的に信頼されているコードから使用することはできません。This member cannot be used by partially trusted code. 詳細については、「部分信頼コードからのライブラリの使用」を参照してください。For more information, see Using Libraries from Partially Trusted Code.

GetInstances(ManagementOperationObserver)

クラスのすべてのインスタンスのコレクションを非同期的に返します。Returns the collection of all instances of the class, asynchronously.

public:
 void GetInstances(System::Management::ManagementOperationObserver ^ watcher);
public void GetInstances (System.Management.ManagementOperationObserver watcher);
member this.GetInstances : System.Management.ManagementOperationObserver -> unit
Public Sub GetInstances (watcher As ManagementOperationObserver)

パラメーター

watcher
ManagementOperationObserver

非同期操作の進行状況を処理するオブジェクト。The object to handle the asynchronous operation's progress.

次の例では、ManagementClass コンストラクターを使用して ManagementClass 変数を初期化し、WMI クラスのすべてのインスタンスを非同期的に取得する方法を示します。The following example shows how to initialize a ManagementClass variable with a ManagementClass constructor and then get all the instances of a WMI class asynchronously.

using System;
using System.Management;

public class AsyncGetExample
{
    public AsyncGetExample() 
    {
        ManagementClass c = 
            new ManagementClass("Win32_Process");
        ManagementOperationObserver ob =
            new ManagementOperationObserver();
        ob.ObjectReady += new ObjectReadyEventHandler(NewObject);
        ob.Completed += new CompletedEventHandler(Done);

        c.GetInstances(ob);

        while (!Completed)
            System.Threading.Thread.Sleep (1000);

        // Here you can use the object
        
    }

    private bool completed = false;

    private void NewObject(object sender,
        ObjectReadyEventArgs e) 
    {
        Console.WriteLine("New result arrived: {0}",
            ((ManagementObject)(e.NewObject))["Name"]);
    }

    private void Done(object sender,
        CompletedEventArgs e) 
    {
        Console.WriteLine("async Get completed !");
        completed = true;
    }

    private bool Completed 
    { 
        get 
        {
            return completed;
        }
    }

    public static void Main()
    {
        AsyncGetExample asyncGet = new
            AsyncGetExample();

        return;
    }
}
Imports System.Management

Public Class AsyncGetExample

    Public Sub New()

        Dim c As New ManagementClass("Win32_Process")
        Dim ob As New ManagementOperationObserver
        AddHandler ob.ObjectReady, AddressOf Me.NewObject
        AddHandler ob.Completed, AddressOf Me.Done

        c.GetInstances(ob)

        While Not Me.Completed
            System.Threading.Thread.Sleep(1000)
        End While

        'Here you can use the object

    End Sub

    Private finished As Boolean = False

    Private Sub NewObject(ByVal sender As Object, _
    ByVal e As ObjectReadyEventArgs)
        Console.WriteLine("New result arrived: {0}", _
         e.NewObject("Name"))
    End Sub

    Private Sub Done(ByVal sender As Object, _
    ByVal e As CompletedEventArgs)
        Console.WriteLine("async Get completed !")
        finished = True
    End Sub

    Private ReadOnly Property Completed() As Boolean
        Get
            Return finished
        End Get
    End Property


    Public Shared Function Main(ByVal args() _
        As String) As Integer

        Dim asyncGet As New AsyncGetExample

        Return 0

    End Function

End Class

注釈

.NET Framework セキュリティ.NET Framework Security

直前の呼び出し元に対する完全な信頼。Full trust for the immediate caller. このメンバーは、部分的に信頼されているコードから使用することはできません。This member cannot be used by partially trusted code. 詳細については、「部分信頼コードからのライブラリの使用」を参照してください。For more information, see Using Libraries from Partially Trusted Code.

GetInstances(ManagementOperationObserver, EnumerationOptions)

指定したオプションを使用して、クラスのすべてのインスタンスのコレクションを非同期的に返します。Returns the collection of all instances of the class, asynchronously, using the specified options.

public:
 void GetInstances(System::Management::ManagementOperationObserver ^ watcher, System::Management::EnumerationOptions ^ options);
public void GetInstances (System.Management.ManagementOperationObserver watcher, System.Management.EnumerationOptions options);
member this.GetInstances : System.Management.ManagementOperationObserver * System.Management.EnumerationOptions -> unit
Public Sub GetInstances (watcher As ManagementOperationObserver, options As EnumerationOptions)

パラメーター

watcher
ManagementOperationObserver

非同期操作の進行状況を処理するオブジェクト。The object to handle the asynchronous operation's progress.

options
EnumerationOptions

インスタンスを取得するために指定する追加のオプション。The specified additional options for getting the instances.

注釈

.NET Framework セキュリティ.NET Framework Security

直前の呼び出し元に対する完全な信頼。Full trust for the immediate caller. このメンバーは、部分的に信頼されているコードから使用することはできません。This member cannot be used by partially trusted code. 詳細については、「部分信頼コードからのライブラリの使用」を参照してください。For more information, see Using Libraries from Partially Trusted Code.

適用対象