Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
No Gestor de Configuração, importar um item de base de configuração ou de configuração utilizando o Gestor de Configuração SDK requer um ficheiro XML devidamente formatado. Ao contrário da consola Do Gestor de Configuração, o Gestor de Configuração SDK não suporta a importação direta de um ficheiro CAB.
Importante
A codificação do ficheiro XML deve ser definida como UNICODE codificada pela UTF-16. A codificação XML pode ser identificada no cabeçalho XML:
<?xml version="1.0" encoding="utf-16" ?>
Quando os dados de configuração são importados para o Gestor de Configuração, o formato pode ser o seguinte:
- DCM Digest XML apenas
Para importar linhas de base de configuração e itens de configuração
Configurar uma ligação com o Fornecedor DE SMS.
Leia o ficheiro XML de origem numa variável.
Criar um caso da
SMS_ConfigurationItem
classe.Copie o conteúdo do ficheiro de origem (XML) para a
SMS_ConfigurationItem
propriedadeSDMPackageXML
.Guarde a instância do item de configuração.
Exemplo
Os exemplos de código que se seguem mostram como criar uma instância de uma linha de base de configuração ou um item de configuração e, em seguida, povoá-lo importando uma linha de base de configuração ou uma definição de XML de item de configuração.
Para obter informações sobre a chamada do código de amostra, consulte o Código de Identificação do Gestor de Chamadas.
Sub DCMImportBaselineOrCI(swbemServices, _
pathToFile)
' Set required variables.
readFile = 1 'constant
fileContents = ""
initialReadSucceeded = ""
triStateTrue = -1 ' This sets the file read to Unicode.
' Check if source xml file exists.
set fileSytemObject = CreateObject("Scripting.FileSystemObject")
If fileSytemObject.FileExists(pathToFile) Then
set textFile = fileSytemObject.OpenTextFile(pathToFile, readFile, False, triStateTrue)
fileContents = textFile.ReadAll
textFile.Close
initialReadSucceeded = true
set textFile = Nothing
Wscript.Echo " "
Wscript.Echo "Successfully read " & pathToFile
Else
initialReadSucceeded = false
Wscript.Echo " "
Wscript.Echo "File does not exist."
End If
set fileSytemObject = Nothing
If initialReadSucceeded Then
On Error Resume Next
' Create an instance of configuration item.
set newCI = swbemServices.Get("SMS_ConfigurationItem").SpawnInstance_()
' Copy specified file contents (XML) into SMS_ConfigurationItem property.
newCI.SDMPackageXML = fileContents
' Save configuration item.
newCI.Put_
If Err.Number<>0 Then
Wscript.Echo "Couldn't create configuration item."
Wscript.Echo "Possible duplicate configuration item or invalid XML."
Wscript.Quit
End If
On Error Goto 0
Else
Wscript.Echo " "
Wscript.Echo "Failed to create configuration item."
End If
End Sub
public void DCMImportBaselineOrCI(WqlConnectionManager connection,
string pathToFile)
{
// Set required variables.
string fileContents = null;
bool initialReadSucceeded = false;
// Load XML file using pathToFile variable.
try
{
// Open the file specified by the pathToFile variable and read the contents into a string.
using (StreamReader sr = new StreamReader(pathToFile, System.Text.Encoding.Unicode))
{
fileContents = sr.ReadToEnd();
}
Console.WriteLine("Successfully read " + pathToFile + ".");
initialReadSucceeded = true;
}
catch (Exception ex)
{
Console.WriteLine("Unable to read " + pathToFile + "." + "\n" + ex.Message);
throw;
}
// Run only if the initial read was successful.
if (initialReadSucceeded)
{
try
{
// Create an instance of Configuration Item.
IResultObject newCI = connection.CreateInstance("SMS_ConfigurationItem");
// Copy specified file contents (XML) into SMS_ConfigurationItem property.
newCI["SDMPackageXML"].StringValue = fileContents;
// Save new SMS_ConfigurationItem object.
newCI.Put();
}
catch (SmsException ex)
{
Console.WriteLine("Failed to create configuration item using " + pathToFile + ".");
Console.WriteLine(ex.Details);
throw;
}
}
}
O método exemplo tem os seguintes parâmetros:
Parâmetro | Tipo | Description |
---|---|---|
- connection - swbemServices |
- Gerido: WqlConnectionManager - VBScript: SWbemServices |
Uma ligação válida ao Fornecedor de SMS. |
pathToFile | - Gerido: String - VBScript: String |
Caminho do ficheiro XML para importar. |
A Compilar o Código
Espaços de nomes
Sistema
System.Collections.Generic
System.ComponentModel
Microsoft.ConfigurationManagement.ManagementProvider
Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assemblagem
adminui.wqlqueryengine
microsoft.configurationmanagement.managementprovider
Programação Robusta
Para obter mais informações sobre o tratamento de erros, consulte Sobre erros do Gestor de Configuração.
Segurança do .NET Framework
Para obter mais informações sobre a segurança das aplicações do Gestor de Configuração, consulte a administração baseada em funções do Gestor de Configuração.
Consulte também
Sobre linhas de base de configuração e itens de configuração
Visão geral de objetos Como Ligação a um Fornecedor de Gestor de Configuração usando Código Gerido
Como Ligação a um fornecedor de gestor de configuração usando o WMI
Classe WMI do servidor de SMS_BaselineAssignment
Classe WMI do servidor de SMS_ConfigurationItem