Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Verwenden Sie WqlConnectionManager.Connect, um eine Verbindung mit einem SMS-Anbieter herzustellen. Nachdem die Verbindung hergestellt wurde, verfügt WqlConnectionManager.Connect über Methoden zum Abfragen, Erstellen, Löschen und anderweitigen Verwenden von Configuration Manager-WMI-Objekten (Windows Management Instrumentation).
Hinweis
WqlConnectionManager.Connect ist eine WMI-spezifische Ableitung von ConnectionManagerBase.
Wenn Sie eine Verbindung mit einem lokalen SMS-Anbieter herstellen, geben Sie keine Benutzeranmeldeinformationen an. Wenn Sie eine Verbindung mit einem Remote-SMS-Anbieter herstellen, müssen Sie keine Benutzeranmeldeinformationen angeben, wenn der aktuelle Benutzer-/Computerkontext über Berechtigungen für den Remote-SMS-Anbieter verfügt.
Wenn Sie keine Zugriffsrechte für den Remote-SMS-Anbieter haben oder ein anderes Benutzerkonto verwenden möchten, müssen Sie die Anmeldeinformationen für ein Benutzerkonto angeben, das über Zugriffsrechte verfügt.
WQLConnectionManager.Connection erfordert ein SmsNamedValuesDictionary-Objekt . Dies kann verwendet werden, um zwischengespeicherte Informationen wie den Computernamen zu speichern.
Er ist mit vielen Werten aufgefüllt, die in Ihrer Anwendung verwendet werden können.
| Wert | Eine Beschreibung. |
|---|---|
| ProviderLocation | Der Standort des Anbieters. Beispiel: \\<ComputerName>\ROOT\sms:SMS_ProviderLocation.SiteCode="XXX". |
| ProviderMachineName | Der Anbietercomputer. Beispiel: \\Computername. |
| Verbindung | Der Verbindungspfad. Beispiel: \\ComputerName\root\sms\site_XXX. |
| ConnectedSiteCode | Der Standortcode für den Configuration Manager-Standort, mit dem die Verbindung verbunden ist. Zum Beispiel XXX. |
| ServerName | Der Computername, z. B. COMPUTERNAME. |
| SiteName | Der Configuration Manager-Standortcode. Beispiel: Zentraler Standort. |
| ConnectedServerVersion | Die Version für den Server, mit dem die Verbindung hergestellt wurde. Beispiel: 4.00.5830.0000 |
| BuildNumber | Die Buildnummer der Configuration Manager-Installation. Beispiel: 5830. |
Hinweis
Das SmsNamedValuesDictionary-Objekt ist nicht die Kontextqualifiziererinformation, die an den Anbieter übergeben wird. Weitere Informationen finden Sie unter Hinzufügen eines Configuration Manager-Kontextqualifizierers mithilfe von verwaltetem Code.
So stellen Sie eine Verbindung mit dem SMS-Anbieter her
Erstellen Sie ein SmsNamedValuesDictionaryObject.
Erstellen Sie eine Instance der WqlConnectionManager-Klasse und rufen Sie die [Connect]-Methode auf, wobei der Servername und, wenn der Servername remote ist, der Benutzername und das Kennwort übergeben werden.
Verwenden Sie das WqlConnectionManager-Objekt , um eine Verbindung mit dem Anbieter herzustellen.
Beispiel
Die folgende Beispielmethode stellt eine Verbindung mit dem SMS-Anbieter auf einem lokalen oder Remotecomputer her. Wenn servername es sich um eine Remotemethode handelt, verwendet die Methode den angegebenen Benutzernamen und das Kennwort, um eine Verbindung mit dem Remotecomputer herzustellen. Wenn Sie den aktuellen Benutzerkontext für die Remoteverbindung verwenden möchten, ändern Sie den Code so, dass er den Benutzernamen und das Kennwort nicht übergibt. Wenn die Verbindung erfolgreich hergestellt werden konnte, wird ein WqlConnectionManager-Objekt zurückgegeben.
Informationen zum Aufrufen des Beispielcodes finden Sie unter Aufrufen von Configuration Manager-Codeausschnitten.
public WqlConnectionManager Connect(string serverName, string userName, string userPassword)
{
try
{
SmsNamedValuesDictionary namedValues = new SmsNamedValuesDictionary();
WqlConnectionManager connection = new WqlConnectionManager(namedValues);
if (System.Net.Dns.GetHostName().ToUpper() == serverName.ToUpper())
{
// Connect to local computer.
connection.Connect(serverName);
}
else
{
// Connect to remote computer.
connection.Connect(serverName, userName, userPassword);
}
return connection;
}
catch (SmsException e)
{
Console.WriteLine("Failed to Connect. Error: " + e.Message);
return null;
}
catch (UnauthorizedAccessException e)
{
Console.WriteLine("Failed to authenticate. Error:" + e.Message);
return null;
}
}
Kompilieren des Codes
Namespaces
System
System.Collections.Generic
System.ComponentModel
Microsoft.ConfigurationManagement.ManagementProvider
Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine
Microsoft.ManagementConsole
Assembly
Microsoft.ConfigurationManagement.ManagementProvider
adminui.wqlqueryengine
Microsoft.ManagementConsole
Robuste Programmierung
Die Configuration Manager-Ausnahmen, die ausgelöst werden können, sind SmsConnectionException und SmsQueryException. Diese können zusammen mit SmsException abgefangen werden.
.NET Framework-Sicherheit
UnauthorizedAccessException wird ausgelöst, wenn die falschen Anmeldeinformationen an WqlConnectionManager.Connect übergeben werden.
Siehe auch
Grundlagen des SMS-AnbietersHinzufügen eines Configuration Manager-Kontextqualifizierers mithilfe von verwaltetem CodeÜbersicht über Objekte