Löschen von Aktualisierungen aus einem Bereitstellungspaket
Sie entfernen Updates aus einem Softwareupdatebereitstellungspaket in Configuration Manager, indem Sie eine Instanz der SMS_SoftwareUpdatesPackage-Klasse abrufen und die RemoveContent-Methode verwenden.
So löschen Sie Updates aus einem Softwareupdatebereitstellungspaket
Richten Sie eine Verbindung mit dem SMS-Anbieter ein.
Rufen Sie mithilfe der
SMS_SoftwareUpdatesPackage
-Klasse ein vorhandenes Paketobjekt ab.Entfernen Sie Den Updateinhalt mithilfe der -Methode aus dem
RemoveContent
vorhandenen Softwareupdateverwaltungspaket.
Beispiel
Die folgende Beispielmethode zeigt, wie Updates mithilfe der SMS_SoftwareUpdatesPackage
-Klasse und der -Methode aus einem Bereitstellungspaket für Softwareupdates RemoveContent
entfernt werden.
Wichtig
Es wurde kein VBScript-Beispiel eingeschlossen, da die RemoveContent
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 RemoveUpdatesfromSUMDeploymentPackage.
// Define the array of Content IDs to load into the content parameters.
int[] newArrayContentIDs2 = new int[] { 82 };
// Load the update content parameters into an object to pass to the method.
Dictionary<string, object> removeContentParameters = new Dictionary<string, object>();
removeContentParameters.Add("ContentIDs", newArrayContentIDs2);
removeContentParameters.Add("bRefreshDPs", true);
// Call the RemoveUpdatesfromSUMDeploymentPackage method.
RemoveUpdatesfromSUMDeploymentPackage(WMIConnection,
"ABC00001",
removeContentParameters);
public void RemoveUpdatesfromSUMDeploymentPackage(WqlConnectionManager connection,
string existingSUMPackageID,
Dictionary<string, object> removeContentParameters)
{
try
{
// Get the specific SUM Deployment Package to change.
IResultObject existingSUMDeploymentPackage = connection.GetInstance(@"SMS_SoftwareUpdatesPackage.PackageID='" + existingSUMPackageID + "'");
// Remove updates from the existing SUM Deployment Package using the RemoveContent method.
// Note: The method will throw an exception, if the method is not able to add the content.
IResultObject result = existingSUMDeploymentPackage.ExecuteMethod("RemoveContent", removeContentParameters);
// Output a success message.
Console.WriteLine("Removed content from the deployment package. ");
}
catch (SmsException ex)
{
Console.WriteLine("Failed to remove content from the deployment package. 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 Softwareupdateverwaltungspaket. |
removecontentParameters |
-Verwalteten: dictionary object |
Der Satz von Parametern (ContentIDs , bRefreshDPs ), der an die -Methode übergeben und mit dem RemoveContent 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
RemoveContent-Methode in Class SMS_SoftwareUpdatesPackage