Hinzufügen von Aktualisierungen zu einem Bereitstellungspaket
Sie fügen Updates zu einem Softwareupdatebereitstellungspaket in Configuration Manager hinzu, indem Sie eine Instanz der SMS_SoftwareUpdatesPackage-Klasse abrufen und die AddUpdateContent-Methode verwenden.
So erstellen Sie ein Bereitstellungspaket für Softwareupdates
Richten Sie eine Verbindung mit dem SMS-Anbieter ein.
Rufen Sie mithilfe der
SMS_SoftwareUpdatesPackage
-Klasse ein vorhandenes Paketobjekt ab.Fügen Sie dem vorhandenen Paket mithilfe der
AddUpdateContent
-Methode Updateinhalte hinzu.
Beispiel
Die folgende Beispielmethode zeigt, wie Sie mithilfe der SMS_SoftwareUpdatesPackage
-Klasse und der -Methode Updates zu einem Bereitstellungspaket für Softwareupdates AddUpdateContent
hinzufügen.
Hinweis
Die Updates müssen im Inhaltsquellenpfad (als Teil des Wörterbuchobjekts addUpdateContentParameters
in C# ) verfügbar sein. Wenn die Updates in einer Paketquelle vorhanden sind, kann diese Paketquelle nicht für mehr als ein Bereitstellungspaket verwendet werden.
Wichtig
Es wurde kein VBScript-Beispiel eingeschlossen, da die AddUpdateContent
Methode bei einem Fehler nicht vom Methodenaufruf zurückgegeben wird. Dies ist ein bekanntes Problem, das untersucht wird.
Informationen zum Aufrufen des Beispielcodes finden Sie unter Aufrufen von Configuration Manager Codeausschnitten.
Beispiel für den Methodenaufruf in 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;
}
}
Die Beispielmethode verfügt über die folgenden Parameter:
Parameter | Typ | Beschreibung |
---|---|---|
connection |
-Verwalteten: WqlConnectionManager |
Eine gültige Verbindung mit dem SMS-Anbieter. |
existingSUMPackageID |
-Verwalteten: String |
Die Paket-ID für ein vorhandenes Softwareupdatebereitstellungspaket. |
addUpdateContentParameters |
– Verwaltet: dictionary Objekt |
Der Satz von Parametern (ContentIDs , ContentSourcePath , bRefreshDPs ), der an die -Methode übergeben und mit dem AddUpdateContent Methodenaufruf verwendet wird. |
Kompilieren des Codes
Für dieses C#-Beispiel ist Folgendes erforderlich:
Namespaces
System
System.Collections.Generic
System.Text
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
adminui.wqlqueryengine
microsoft.configurationmanagement.managementprovider
Robuste Programmierung
Weitere Informationen zur Fehlerbehandlung finden Sie unter Informationen zu Configuration Manager Fehlern.
.NET Framework-Sicherheit
Weitere Informationen zum Schützen Configuration Manager Anwendungen finden Sie unter Configuration Manager rollenbasierte Verwaltung.
Siehe auch
Informationen zu Softwareupdatebereitstellungen: Zuweisen eines Pakets zu einem Verteilungspunkt
SMS_SoftwareUpdatesPackage
AddUpdateContent-Methode in Class SMS_SoftwareUpdatesPackage