Подключение к поставщику SMS в Configuration Manager с помощью управляемого кода
Чтобы подключиться к поставщику SMS, используйте WqlConnectionManager.Connect. После подключения WqlConnectionManager.Connect имеет методы для запроса, создания, удаления и другого использования Configuration Manager объектов инструментария управления Windows (WMI).
Примечание.
WqlConnectionManager.Connect — это наследование ConnectionManagerBase для WMI.
При подключении к локальному поставщику SMS учетные данные пользователя не предоставляются. При подключении к удаленному поставщику SMS не нужно предоставлять учетные данные пользователя, если текущий контекст пользователя или компьютера имеет разрешения на удаленный поставщик SMS.
Если у вас нет прав доступа к удаленному поставщику SMS или вы хотите использовать другую учетную запись пользователя, необходимо указать учетные данные пользователя для учетной записи пользователя с правами доступа.
Для WQLConnectionManager.Connectionтребуется объект SmsNamedValuesDictionary . Его можно использовать для хранения кэшированных сведений, таких как имя компьютера.
Он предварительно заполняется рядом значений, которые можно использовать в приложении.
Значение | Описание. |
---|---|
ProviderLocation | Расположение поставщика. Пример. \\<ComputerName>\ROOT\sms:SMS_ProviderLocation.SiteCode="XXX". |
ProviderMachineName | Компьютер поставщика. Например, \\ComputerName. |
Connection | Путь подключения. Например, \\ComputerName\root\sms\site_XXX. |
ConnectedSiteCode | Код сайта для Configuration Manager сайта, к которому подключено подключение. Например, XXX. |
ServerName | Имя компьютера, например COMPUTERNAME. |
Sitename | Код сайта Configuration Manager. Например, Центральный сайт. |
ConnectedServerVersion | Версия подключенного сервера. Например, 4.00.5830.0000 |
BuildNumber | Номер сборки Configuration Manager установки. Например, 5830. |
Примечание.
Объект SmsNamedValuesDictionary не является информацией квалификатора контекста, передаваемой поставщику. Дополнительные сведения см. в статье Добавление квалификатора контекста Configuration Manager с помощью управляемого кода.
Подключение к поставщику SMS
Создайте SmsNamedValuesDictionaryObject.
Создайте экземпляр класса WqlConnectionManager и вызовите метод [Connect] , передав имя сервера, а если имя сервера является удаленным, имя пользователя и пароль.
Используйте объект WqlConnectionManager для подключения к поставщику.
Пример
В следующем примере метод подключается к поставщику SMS на локальном или удаленном компьютере. Если servername
является удаленным, метод использует предоставленные имя пользователя и пароль для подключения к удаленному компьютеру. Если вы хотите использовать текущий контекст пользователя, для удаленного подключения измените код, чтобы он не передавал имя пользователя и пароль. Если подключение выполнено успешно, возвращается объект WqlConnectionManager .
Сведения о вызове примера кода см. в разделе Вызов фрагментов кода Configuration Manager.
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;
}
}
Компиляция программы
Пространства имен
System;
System.Collections.Generic;
System.ComponentModel
Майкрософт. ConfigurationManagement.ManagementProvider
Майкрософт. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Майкрософт. ManagementConsole
Assembly
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
Майкрософт. ManagementConsole
Надежное программирование
Configuration Manager исключения, которые могут быть вызваны: SmsConnectionException и SmsQueryException. Их можно поймать вместе с SmsException.
Безопасность .NET Framework
Исключение UnauthorizedAccessException возникает, когда в WqlConnectionManager.Connect передаются неправильные учетные данные.
См. также
Основы поставщика SMS. Добавление квалификатора контекста Configuration Manager с помощью управляемого кода
Обзор объектов