ConnectionOptions Konstruktoren

Definition

Erstellt eine neue ConnectionOption.

Überlädt

Name Beschreibung
ConnectionOptions()

Initialisiert eine neue Instanz der ConnectionOptions Klasse für den Verbindungsvorgang, wobei Standardwerte verwendet werden. Dies ist der parameterlose Konstruktor.

ConnectionOptions(String, String, SecureString, String, ImpersonationLevel, AuthenticationLevel, Boolean, ManagementNamedValueCollection, TimeSpan)

Erstellt eine neue ConnectionOption.

ConnectionOptions(String, String, String, String, ImpersonationLevel, AuthenticationLevel, Boolean, ManagementNamedValueCollection, TimeSpan)

Initialisiert eine neue Instanz der Klasse, die ConnectionOptions für eine WMI-Verbindung verwendet werden soll, wobei die angegebenen Werte verwendet werden.

ConnectionOptions()

Quelle:
ManagementOptions.cs
Quelle:
ManagementOptions.cs
Quelle:
ManagementOptions.cs
Quelle:
ManagementOptions.cs

Initialisiert eine neue Instanz der ConnectionOptions Klasse für den Verbindungsvorgang, wobei Standardwerte verwendet werden. Dies ist der parameterlose Konstruktor.

public:
 ConnectionOptions();
public ConnectionOptions();
Public Sub New ()

Beispiele

Im folgenden Beispiel wird eine Verbindung mit einem Remotecomputer hergestellt und Informationen zum Betriebssystem auf dem Remotecomputer angezeigt. Es wird eine ConnectionOptions Verbindung mit dem Remotecomputer mit Standardverbindungsoptionen erstellt.

using System;
using System.Management;
public class RemoteConnect
{
    public static void Main()
    {
        // Build an options object for the remote connection
        // if you plan to connect to the remote
        // computer with a different user name
        // and password than the one you are currently using.
        // This example uses the default values.

        ConnectionOptions options =
            new ConnectionOptions();

        // Make a connection to a remote computer.
        // Replace the "FullComputerName" section of the
        // string "\\\\FullComputerName\\root\\cimv2" with
        // the full computer name or IP address of the
        // remote computer.
        ManagementScope scope =
            new ManagementScope(
            "\\\\FullComputerName\\root\\cimv2", options);
        scope.Connect();

        //Query system for Operating System information
        ObjectQuery query = new ObjectQuery(
            "SELECT * FROM Win32_OperatingSystem");
        ManagementObjectSearcher searcher =
            new ManagementObjectSearcher(scope,query);

        ManagementObjectCollection queryCollection = searcher.Get();
        foreach ( ManagementObject m in queryCollection)
        {
            // Display the remote computer information
            Console.WriteLine("Computer Name : {0}",
                m["csname"]);
            Console.WriteLine("Windows Directory : {0}",
                m["WindowsDirectory"]);
            Console.WriteLine("Operating System: {0}",
                m["Caption"]);
            Console.WriteLine("Version: {0}", m["Version"]);
            Console.WriteLine("Manufacturer : {0}",
                m["Manufacturer"]);
        }
    }
}
Imports System.Management
Public Class RemoteConnect

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

        ' Build an options object for the remote connection
        ' if you plan to connect to the remote
        ' computer with a different user name
        ' and password than the one you are currently using
        Dim options As ConnectionOptions
        options = New ConnectionOptions

        ' Make a connection to a remote computer.
        ' Replace the "FullComputerName" section of the
        ' string "\\FullComputerName\root\cimv2" with
        ' the full computer name or IP address of the
        ' remote computer.
        Dim scope As ManagementScope
        scope = New ManagementScope( _
            "\\FullComputerName\root\cimv2", options)
        scope.Connect()

        ' Query system for Operating System information
        Dim query As ObjectQuery
        query = New ObjectQuery( _
            "SELECT * FROM Win32_OperatingSystem")
        Dim searcher As ManagementObjectSearcher
        searcher = _
            New ManagementObjectSearcher(scope, query)

        Dim queryCollection As ManagementObjectCollection
        queryCollection = searcher.Get()

        Dim m As ManagementObject
        For Each m In queryCollection
            ' Display the remote computer information
            Console.WriteLine("Computer Name : {0}", _
                m("csname"))
            Console.WriteLine("Windows Directory : {0}", _
                m("WindowsDirectory"))
            Console.WriteLine("Operating System: {0}", _
                m("Caption"))
            Console.WriteLine("Version: {0}", m("Version"))
            Console.WriteLine("Manufacturer : {0}", _
                m("Manufacturer"))
        Next

        Return 0
    End Function
End Class

Hinweise

.NET Framework-Sicherheit

Volle Vertrauenswürdigstellung für den unmittelbaren Anrufer. Dieses Element kann nicht von teilweise vertrauenswürdigem Code verwendet werden. Weitere Informationen finden Sie unter Verwenden von Bibliotheken aus teilweise vertrauenswürdigen Code.

Gilt für:

ConnectionOptions(String, String, SecureString, String, ImpersonationLevel, AuthenticationLevel, Boolean, ManagementNamedValueCollection, TimeSpan)

Quelle:
ManagementOptions.cs
Quelle:
ManagementOptions.cs
Quelle:
ManagementOptions.cs
Quelle:
ManagementOptions.cs

Erstellt eine neue ConnectionOption.

public:
 ConnectionOptions(System::String ^ locale, System::String ^ username, System::Security::SecureString ^ password, System::String ^ authority, System::Management::ImpersonationLevel impersonation, System::Management::AuthenticationLevel authentication, bool enablePrivileges, System::Management::ManagementNamedValueCollection ^ context, TimeSpan timeout);
public ConnectionOptions(string locale, string username, System.Security.SecureString password, string authority, System.Management.ImpersonationLevel impersonation, System.Management.AuthenticationLevel authentication, bool enablePrivileges, System.Management.ManagementNamedValueCollection context, TimeSpan timeout);
new System.Management.ConnectionOptions : string * string * System.Security.SecureString * string * System.Management.ImpersonationLevel * System.Management.AuthenticationLevel * bool * System.Management.ManagementNamedValueCollection * TimeSpan -> System.Management.ConnectionOptions
Public Sub New (locale As String, username As String, password As SecureString, authority As String, impersonation As ImpersonationLevel, authentication As AuthenticationLevel, enablePrivileges As Boolean, context As ManagementNamedValueCollection, timeout As TimeSpan)

Parameter

locale
String

Das Gebietsschema, das für die Verbindung verwendet werden soll.

username
String

Der Benutzername, der für die Verbindung verwendet werden soll. Wenn NULL, werden die Anmeldeinformationen des aktuell angemeldeten Benutzers verwendet.

password
SecureString

Das Kennwort für den angegebenen Benutzernamen. Wenn der Benutzername ebenfalls NULL ist, sind die verwendeten Anmeldeinformationen die des aktuell angemeldeten Benutzers.

authority
String

Die Autorität, die zum Authentifizieren des angegebenen Benutzers verwendet werden soll.

impersonation
ImpersonationLevel

Die FÜR die Verbindung zu verwendende COM-Identitätswechselebene.

authentication
AuthenticationLevel

Die COM-Authentifizierungsstufe, die für die Verbindung verwendet werden soll.

enablePrivileges
Boolean

true, um spezielle Benutzerberechtigungen zu aktivieren; andernfalls "false". Dieser Parameter sollte nur verwendet werden, wenn ein Vorgang ausgeführt wird, der spezielle Windows NT-Benutzerberechtigungen erfordert.

context
ManagementNamedValueCollection

Ein anbieterspezifisches benanntes Wertpaarobjekt, das an den Anbieter übergeben werden soll.

timeout
TimeSpan

Reserviert für zukünftige Verwendung.

Gilt für:

ConnectionOptions(String, String, String, String, ImpersonationLevel, AuthenticationLevel, Boolean, ManagementNamedValueCollection, TimeSpan)

Quelle:
ManagementOptions.cs
Quelle:
ManagementOptions.cs
Quelle:
ManagementOptions.cs
Quelle:
ManagementOptions.cs

Initialisiert eine neue Instanz der Klasse, die ConnectionOptions für eine WMI-Verbindung verwendet werden soll, wobei die angegebenen Werte verwendet werden.

public:
 ConnectionOptions(System::String ^ locale, System::String ^ username, System::String ^ password, System::String ^ authority, System::Management::ImpersonationLevel impersonation, System::Management::AuthenticationLevel authentication, bool enablePrivileges, System::Management::ManagementNamedValueCollection ^ context, TimeSpan timeout);
public ConnectionOptions(string locale, string username, string password, string authority, System.Management.ImpersonationLevel impersonation, System.Management.AuthenticationLevel authentication, bool enablePrivileges, System.Management.ManagementNamedValueCollection context, TimeSpan timeout);
new System.Management.ConnectionOptions : string * string * string * string * System.Management.ImpersonationLevel * System.Management.AuthenticationLevel * bool * System.Management.ManagementNamedValueCollection * TimeSpan -> System.Management.ConnectionOptions
Public Sub New (locale As String, username As String, password As String, authority As String, impersonation As ImpersonationLevel, authentication As AuthenticationLevel, enablePrivileges As Boolean, context As ManagementNamedValueCollection, timeout As TimeSpan)

Parameter

locale
String

Das Gebietsschema, das für die Verbindung verwendet werden soll.

username
String

Der Benutzername, der für die Verbindung verwendet werden soll. Wenn NULL, werden die Anmeldeinformationen des aktuell angemeldeten Benutzers verwendet.

password
String

Das Kennwort für den angegebenen Benutzernamen. Wenn der Benutzername ebenfalls NULL ist, sind die verwendeten Anmeldeinformationen die des aktuell angemeldeten Benutzers.

authority
String

Die Autorität, die zum Authentifizieren des angegebenen Benutzers verwendet werden soll.

impersonation
ImpersonationLevel

Die FÜR die Verbindung zu verwendende COM-Identitätswechselebene.

authentication
AuthenticationLevel

Die COM-Authentifizierungsstufe, die für die Verbindung verwendet werden soll.

enablePrivileges
Boolean

trueum spezielle Benutzerberechtigungen zu aktivieren; andernfalls . false Dieser Parameter sollte nur verwendet werden, wenn ein Vorgang ausgeführt wird, der spezielle Windows NT-Benutzerberechtigungen erfordert.

context
ManagementNamedValueCollection

Ein anbieterspezifisches benanntes Wertpaarobjekt, das an den Anbieter übergeben werden soll.

timeout
TimeSpan

Reserviert für zukünftige Verwendung.

Beispiele

Im folgenden Beispiel wird eine Verbindung mit einem Remotecomputer hergestellt und Informationen zum Betriebssystem auf dem Remotecomputer angezeigt. Es wird eine ConnectionOptions Verbindung mit dem Remotecomputer mit den gewünschten Verbindungsoptionen erstellt.

using System;
using System.Management;
using System.Security;

public class RemoteConnect
{
    public static void Main()
    {
        // Build an options object for the remote connection
        // if you plan to connect to the remote
        // computer with a different user name
        // and password than the one you are currently using.
        SecureString pw = GetPassword();
        ConnectionOptions options =
            new ConnectionOptions("MS_409", "userName", pw,
            "ntlmdomain:DOMAIN",
            System.Management.ImpersonationLevel.Impersonate,
            System.Management.AuthenticationLevel.Default, true,
            null, System.TimeSpan.MaxValue);
        pw.Dispose();

        // Make a connection to a remote computer.
        // Replace the "FullComputerName" section of the
        // string "\\\\FullComputerName\\root\\cimv2" with
        // the full computer name or IP address of the
        // remote computer.
        ManagementScope scope =
            new ManagementScope(
            "\\\\FullComputerName\\root\\cimv2", options);
        scope.Connect();

        //Query system for Operating System information
        ObjectQuery query = new ObjectQuery(
            "SELECT * FROM Win32_OperatingSystem");
        ManagementObjectSearcher searcher =
            new ManagementObjectSearcher(scope, query);

        ManagementObjectCollection queryCollection = searcher.Get();
        foreach (ManagementObject m in queryCollection)
        {
            // Display the remote computer information
            Console.WriteLine("Computer Name : {0}",
                m["csname"]);
            Console.WriteLine("Windows Directory : {0}",
                m["WindowsDirectory"]);
            Console.WriteLine("Operating System: {0}",
                m["Caption"]);
            Console.WriteLine("Version: {0}", m["Version"]);
            Console.WriteLine("Manufacturer : {0}",
                m["Manufacturer"]);
        }
    }

    /// <summary>
    /// Read a password from the console into a SecureString
    /// </summary>
    /// <returns>Password stored in a secure string</returns>
    public static SecureString GetPassword()
    {
        SecureString password = new SecureString();
        Console.WriteLine("Enter password: ");

        // get the first character of the password
        ConsoleKeyInfo nextKey = Console.ReadKey(true);

        while (nextKey.Key != ConsoleKey.Enter)
        {
            if (nextKey.Key == ConsoleKey.Backspace)
            {
                if (password.Length > 0)
                {
                    password.RemoveAt(password.Length - 1);

                    // erase the last * as well
                    Console.Write(nextKey.KeyChar);
                    Console.Write(" ");
                    Console.Write(nextKey.KeyChar);
                }
            }
            else
            {
                password.AppendChar(nextKey.KeyChar);
                Console.Write("*");
            }

            nextKey = Console.ReadKey(true);
        }

        Console.WriteLine();

        // lock the password down
        password.MakeReadOnly();
        return password;
    }
}
Imports System.Management
Imports System.Security

Public Class RemoteConnect

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


        ' Build an options object for the remote connection
        ' if you plan to connect to the remote
        ' computer with a different user name
        ' and password than the one you are currently using.

        Dim pw As SecureString
        pw = GetPassword()
        Dim options As ConnectionOptions
        options = New ConnectionOptions("MS_409", "userName", pw, _
             "ntlmdomain:DOMAIN", _
             System.Management.ImpersonationLevel.Impersonate, _
             System.Management.AuthenticationLevel.Default, True, _
             Nothing, System.TimeSpan.MaxValue)

        ' Make a connection to a remote computer.
        ' Replace the "FullComputerName" section of the
        ' string "\\FullComputerName\root\cimv2" with
        ' the full computer name or IP address of the
        ' remote computer.
        Dim scope As ManagementScope
        scope = New ManagementScope( _
            "\\FullComputerName\root\cimv2", options)
        scope.Connect()

        ' Query system for Operating System information
        Dim query As ObjectQuery
        query = New ObjectQuery( _
            "SELECT * FROM Win32_OperatingSystem")
        Dim searcher As ManagementObjectSearcher
        searcher = _
            New ManagementObjectSearcher(scope, query)

        Dim queryCollection As ManagementObjectCollection
        queryCollection = searcher.Get()

        Dim m As ManagementObject
        For Each m In queryCollection
            ' Display the remote computer information
            Console.WriteLine("Computer Name : {0}", _
                m("csname"))
            Console.WriteLine("Windows Directory : {0}", _
                m("WindowsDirectory"))
            Console.WriteLine("Operating System: {0}", _
                m("Caption"))
            Console.WriteLine("Version: {0}", m("Version"))
            Console.WriteLine("Manufacturer : {0}", _
                m("Manufacturer"))
        Next

        Return 0
    End Function


    ' Read a password from the console into a SecureString
    Public Shared Function GetPassword() As SecureString

        Dim password As New SecureString()
        Console.WriteLine("Enter password: ")

        ' get the first character of the password
        Dim nextKey As ConsoleKeyInfo
        nextKey = Console.ReadKey(True)

        While nextKey.Key <> ConsoleKey.Enter

            If nextKey.Key = ConsoleKey.Backspace Then
                If password.Length > 0 Then
                    password.RemoveAt(password.Length - 1)

                    ' erase the last * as well
                    Console.Write(nextKey.KeyChar)
                    Console.Write(" ")
                    Console.Write(nextKey.KeyChar)
                End If
            Else
                password.AppendChar(nextKey.KeyChar)
                Console.Write("*")
            End If

            nextKey = Console.ReadKey(True)
        End While

        Console.WriteLine()

        ' lock the password down
        password.MakeReadOnly()
        Return password
    End Function
End Class

Hinweise

.NET Framework-Sicherheit

Volle Vertrauenswürdigstellung für den unmittelbaren Anrufer. Dieses Element kann nicht von teilweise vertrauenswürdigem Code verwendet werden. Weitere Informationen finden Sie unter Verwenden von Bibliotheken aus teilweise vertrauenswürdigen Code.

Gilt für: