Экспорт базовых показателей конфигурации и элементов конфигурации
В Configuration Manager, чтобы экспортировать базовый план конфигурации или элемент конфигурации с помощью пакета SDK для Configuration Manager, считайте соответствующий SMS_ConfigurationItem
экземпляр и запишите SDMPackageXML
свойство (строку) в файл.
Важно!
Кодировка XML-файла должна иметь кодировку Юникод в кодировке UTF-16.
Экспорт базовых показателей конфигурации и элементов конфигурации
Настройте подключение к поставщику SMS.
Получите конкретный экземпляр класса SMS_ConfigurationItem , используя уникальный идентификатор элемента конфигурации (CI_ID).
Скопируйте XML-файл элемента конфигурации (SDMPackageXML) в переменную.
Запишите XML-содержимое элемента конфигурации в файл.
Пример
В следующем примере кода показано, как считывать экземпляр базового плана конфигурации или элемента конфигурации, а затем экспортировать его в файл.
Сведения о вызове примера кода см. в разделе Вызов фрагментов кода Configuration Manager.
Sub DCMExportBaselineOrCI(swbemServices, _
pathToFile, _
configurationItemId)
' Set required variables.
fileContents = ""
configurationItemXML = null
' Get specified configuration item (configurationItemId variable).
Set getCIInfo = swbemServices.Get("SMS_ConfigurationItem.CI_ID=" & configurationItemId )
' Copy configuration item XML into variable.
configurationItemXML = getCIInfo.SDMPackageXML
Wscript.Echo configurationItemXML
' Open file for write (Unicode option enabled by second true).
Set FSO = CreateObject("Scripting.FileSystemObject")
Set textFile = FSO.CreateTextFile(pathToFile, true, true)
' Write XML content to file specified by pathToFile.
textFile.Write configurationItemXML
textFile.Close
Wscript.Echo " "
Wscript.Echo "Successfully wrote " & pathToFile
End Sub
public void DCMExportBaselineOrCI(WqlConnectionManager connection,
string pathToOutputFile,
string configurationItemId)
{
// Set required variables.
string configurationItemXML = null;
try
{
// Get the specified configuration item (configurationItemId variable).
IResultObject getCIInfo = connection.GetInstance(@"SMS_ConfigurationItem.CI_ID=" + configurationItemId);
// Copy configuration item XML into variable.
configurationItemXML = getCIInfo["SDMPackageXML"].StringValue;
}
catch (SmsException ex)
{
Console.WriteLine("Failed to retrieve configuration item xml. " + "\n" + ex.Message);
throw;
}
StreamWriter sw = null;
try
{
// Open file for output.
sw = new StreamWriter(pathToOutputFile, false, System.Text.Encoding.Unicode);
// Write XML to output file.
sw.Write(configurationItemXML);
}
catch (Exception ex)
{
Console.WriteLine("Failed to write configuration item XML to: " + pathToOutputFile + "\n" + ex.Message);
throw;
}
finally
{
if (sw != null)
{
sw.Close();
}
}
Console.WriteLine("Wrote configuration item XML to: " + pathToOutputFile);
}
Метод примера имеет следующие параметры:
Параметр | Тип | Описание |
---|---|---|
connection |
-Управляемых: WqlConnectionManager — VBScript: SWbemServices |
Допустимое подключение к поставщику SMS. |
- pathToOutputFile - pathToFile |
-Управляемых: String -Vbscript: String |
Путь к выходному файлу. |
configurationItemId |
-Управляемых: String -Vbscript: String |
Идентификатор экспортируемого элемента конфигурации. |
Компиляция программы
Пространства имен
System;
System.Collections.Generic;
System.ComponentModel
Майкрософт. ConfigurationManagement.ManagementProvider
Майкрософт. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
adminui.wqlqueryengine
microsoft.configurationmanagement.managementprovider
Надежное программирование
Дополнительные сведения об обработке ошибок см. в разделе Сведения об ошибках Configuration Manager.
Безопасность .NET Framework
Дополнительные сведения о защите приложений Configuration Manager см. в статье Configuration Manager администрирование на основе ролей.
См. также
Сведения о базовых показателях конфигурации и элементах конфигурации
Общие сведения об объектах. Подключение к поставщику Configuration Manager с помощью управляемого кода
Подключение к поставщику Configuration Manager с помощью WMI
Класс WMI сервера SMS_BaselineAssignment
класс WMI сервера SMS_ConfigurationItem