Język

ManagementObject.Get Metoda

Definicja

Wiąże się z obiektem zarządzania.

Przeciążenia

Nazwa Opis
Get()

Wiąże informacje o klasie WMI z obiektem zarządzania.

Get(ManagementOperationObserver)

Wiąże się z obiektem zarządzania asynchronicznie.

Uwagi

Zabezpieczenia programu .NET Framework

Pełne zaufanie dla bezpośredniego obiektu wywołującego. Tego elementu członkowskiego nie można używać przez częściowo zaufany kod. Aby uzyskać więcej informacji, zobacz Using Libraries from Partially Trusted Code (Używanie bibliotek z częściowo zaufanego kodu).

Get()

Źródło:
ManagementObject.cs
Źródło:
ManagementObject.cs
Źródło:
ManagementObject.cs
Źródło:
ManagementObject.cs

Wiąże informacje o klasie WMI z obiektem zarządzania.

public:
 void Get();
public void Get();
member this.Get : unit -> unit
Public Sub Get ()

Przykłady

Poniższy przykład wywołuje metodę Get , aby uzyskać wystąpienie ManagementObject klasy.

using System;
using System.Management;

class Sample
{
    public static int Main(string[] args)
    {
        ManagementObject o =
            new ManagementObject("MyClass.Name='abc'");

        //this causes an implicit Get().
        string s = o["Name"].ToString();

        Console.WriteLine(s);

        //or :

        ManagementObject mObj =
            new ManagementObject("MyClass.Name= 'abc'");
        mObj.Get(); //explicitly
        // Now it is faster because the object
        // has already been retrieved.
        string property = mObj["Name"].ToString();

        Console.WriteLine(property);

        return 0;
    }
}
Imports System.Management

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

        Dim o As New ManagementObject( _
            "MyClass.Name=""abc""")

        'this causes an implicit Get().
        Dim s As String = o("SomeProperty")

        Console.WriteLine(s)

        'or :

        Dim mObj As New ManagementObject("MyClass.Name= ""abc""")
        mObj.Get()  'explicitly 
        ' Now it is faster because the object
        ' has already been retrieved.
        Dim p As String = mObj("SomeProperty")

        Console.WriteLine(p)

        Return 0
    End Function
End Class

Uwagi

Metoda jest niejawnie wywoływana podczas pierwszej próby pobrania lub ustawienia informacji do obiektu WMI. Można go również jawnie wywołać według uznania użytkownika, aby lepiej kontrolować czas i sposób pobierania.

Zabezpieczenia programu .NET Framework

Pełne zaufanie dla bezpośredniego obiektu wywołującego. Tego elementu członkowskiego nie można używać przez częściowo zaufany kod. Aby uzyskać więcej informacji, zobacz Using Libraries from Partially Trusted Code (Używanie bibliotek z częściowo zaufanego kodu).

Dotyczy

Get(ManagementOperationObserver)

Źródło:
ManagementObject.cs
Źródło:
ManagementObject.cs
Źródło:
ManagementObject.cs
Źródło:
ManagementObject.cs

Wiąże się z obiektem zarządzania asynchronicznie.

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

Parametry

watcher
ManagementOperationObserver

Obiekt, który ma odbierać wyniki operacji jako zdarzenia.

Przykłady

Poniższy przykład wywołuje metodę Get w celu asynchronicznego pobrania wystąpienia ManagementObject klasy.

using System;
using System.Management;

public class AsyncGetExample
{
    public AsyncGetExample()
    {
        ManagementObject o =
            new ManagementObject(
            "Win32_Process.Name='notepad.exe'");

        // Set up handlers for asynchronous get
        ManagementOperationObserver ob =
            new ManagementOperationObserver();
        ob.Completed += new
            CompletedEventHandler(this.Done);

        // Get the object asynchronously
        o.Get(ob);

        // Wait until operation is completed
        while (!this.Completed)
            System.Threading.Thread.Sleep (1000);

        // Here you can use the object
    }

    private bool completed = false;

    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 example =
            new AsyncGetExample();
    }
}
Imports System.Management

Class AsyncGetExample

    Public Sub New()

        Dim o As New ManagementObject( _
            "Win32_Process.Name=""notepad.exe""")

        'Set up handlers for asynchronous get
        Dim ob As New ManagementOperationObserver
        AddHandler ob.Completed, AddressOf Me.Done

        'Get the object asynchronously
        o.Get(ob)

        'Wait until operation is completed
        While Not Me.Completed
            System.Threading.Thread.Sleep(1000)
        End While

        'Here you can use the object

    End Sub

    Private _completed As Boolean = False

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

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

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

        Dim example As New AsyncGetExample

        Return 0

    End Function


End Class

Uwagi

Metoda wyda żądanie pobrania obiektu, a następnie natychmiast zwróci. Wyniki operacji zostaną następnie dostarczone za pośrednictwem zdarzeń wyzwalanych na udostępnionym obiekcie obserwatora.

Zabezpieczenia programu .NET Framework

Pełne zaufanie dla bezpośredniego obiektu wywołującego. Tego elementu członkowskiego nie można używać przez częściowo zaufany kod. Aby uzyskać więcej informacji, zobacz Using Libraries from Partially Trusted Code (Używanie bibliotek z częściowo zaufanego kodu).

Dotyczy