Como adicionar Atualizações a um pacote de implantação
Você adiciona atualizações a um pacote de implantação de atualizações de software, em Configuration Manager, obtendo uma instância da classe SMS_SoftwareUpdatesPackage e usando o método AddUpdateContent.
Para criar um pacote de implantação de atualizações de software
Configure uma conexão com o Provedor de SMS.
Obtenha um objeto de pacote existente usando a
SMS_SoftwareUpdatesPackage
classe.Adicione conteúdo de atualização ao pacote existente usando o
AddUpdateContent
método.
Exemplo
O método de exemplo a seguir mostra como adicionar atualizações a um pacote de implantação de atualizações de software usando a SMS_SoftwareUpdatesPackage
classe e o AddUpdateContent
método.
Observação
As atualizações devem estar disponíveis no caminho da origem do conteúdo (como parte do objeto addUpdateContentParameters
dicionário em C#). Se as atualizações existirem em uma fonte de pacote, essa fonte de pacote não poderá ser usada para mais de um pacote de implantação.
Importante
Nenhum exemplo de VBScript foi incluído, pois o AddUpdateContent
método não retorna da chamada de método sobre falha. Este é um problema conhecido e está sendo investigado.
Para obter informações sobre como chamar o código de exemplo, consulte Chamando Configuration Manager Snippets de Código.
Exemplo da chamada de método em C#:
// PREWORK FOR AddUpdatesToSUMDeploymentPackage
// Define the array of Content Ids to load into addUpdateContentParameters.
int[] newArrayContentIds = new int[] { 82 };
// Define the array of source paths (these must be UNC) to load into addUpdateContentParameters.
string[] newArrayContentSourcePath = new string[] { "\\\\ServerOne\\source1" };
// Load the update content parameters into an object to pass to the method.
Dictionary<string, object> addUpdateContentParameters = new Dictionary<string, object>();
addUpdateContentParameters.Add("ContentIds", newArrayContentIds);
addUpdateContentParameters.Add("ContentSourcePath", newArrayContentSourcePath);
addUpdateContentParameters.Add("bRefreshDPs", false);
AddUpdatestoSUMDeploymentPackage(WMIConnection,
"ABC00001",
addUpdateContentParameters);
public void AddUpdatestoSUMDeploymentPackage(WqlConnectionManager connection,
string existingSUMPackageID,
Dictionary<string, object> addUpdateContentParameters)
{
try
{
// Get the specific SUM Deployment Package to change.
IResultObject existingSUMDeploymentPackage = connection.GetInstance(@"SMS_SoftwareUpdatesPackage.PackageID='" + existingSUMPackageID + "'");
// Add updates to the existing SUM Deployment Package using the AddUpdateContent method.
// Note: The method will throw an exception, if the method is not able to add the content.
existingSUMDeploymentPackage.ExecuteMethod("AddUpdateContent", addUpdateContentParameters);
// Output a success message that the content was added.
Console.WriteLine("Added content to the SUM deployment package. ");
}
catch (SmsException ex)
{
Console.WriteLine("Failed to add content to the SUM deployment package.");
Console.WriteLine("Error: " + ex.Message);
throw;
}
}
O método de exemplo tem os seguintes parâmetros:
Parâmetro | Tipo | Descrição |
---|---|---|
connection |
-Gerenciado: WqlConnectionManager |
Uma conexão válida com o provedor de SMS. |
existingSUMPackageID |
-Gerenciado: String |
A ID do pacote de um pacote de implantação de atualizações de software existente. |
addUpdateContentParameters |
– Gerenciado: dictionary objeto |
O conjunto de parâmetros (ContentIDs , , ContentSourcePath ), bRefreshDPs que é passado para o método e usado com a chamada de AddUpdateContent método. |
Compilando o código
Este exemplo de C# requer:
Namespaces
System
System.Collections.Generic
System.Text
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
adminui.wqlqueryengine
microsoft.configurationmanagement.managementprovider
Programação robusta
Para obter mais informações sobre o tratamento de erros, consulte Sobre erros de Configuration Manager.
Segurança do .NET Framework
Para obter mais informações sobre como proteger aplicativos Configuration Manager, consulte Configuration Manager administração baseada em função.
Confira também
Sobre implantações de atualização de softwareComo atribuir um pacote a um ponto de distribuição
SMS_SoftwareUpdatesPackage
Método AddUpdateContent na classe SMS_SoftwareUpdatesPackage