Updates verwijderen uit een implementatiepakket

U verwijdert updates uit een implementatiepakket voor software-updates in Configuration Manager door een exemplaar van de klasse SMS_SoftwareUpdatesPackage te verkrijgen en de methode RemoveContent te gebruiken.

Updates verwijderen uit een implementatiepakket voor software-updates

  1. Stel een verbinding in met de sms-provider.

  2. Verkrijg een bestaand pakketobject met behulp van de SMS_SoftwareUpdatesPackage klasse.

  3. Verwijder update-inhoud uit het bestaande beheerpakket voor software-updates met behulp van deze RemoveContent methode.

Voorbeeld

In de volgende voorbeeldmethode ziet u hoe u updates uit een implementatiepakket voor software-updates verwijdert met behulp van de SMS_SoftwareUpdatesPackage klasse en de RemoveContent methode.

Belangrijk

Er is geen VBScript-voorbeeld opgenomen, omdat de RemoveContent methode bij een fout niet terugkeert van de methodeaanroep. Dit is een bekend probleem en dit wordt onderzocht.

Zie Codefragmenten van Configuration Manager aanroepen voor meer informatie over het aanroepen van de voorbeeldcode.

Voorbeeld van de methodeaanroep 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;
    }
}

De voorbeeldmethode heeft de volgende parameters:

Parameter Type Beschrijving
connection - Beheerd: WqlConnectionManager Een geldige verbinding met de sms-provider.
existingSUMPackageID - Beheerd: String De pakket-id voor een bestaand beheerpakket voor software-updates.
removecontentParameters - Beheerd: dictionary object De set parameters (ContentIDs, bRefreshDPs) die wordt doorgegeven aan de methode en wordt gebruikt met de aanroep van de RemoveContent methode.

De code compileren

Dit C#-voorbeeld vereist:

Naamruimten

Systeem

System.Collections.Generic

System.Text

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

bijeenkomst

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

Robuust programmeren

Zie Info over fouten in Configuration Manager voor meer informatie over foutafhandeling.

.NET Framework-beveiliging

Zie Rolgebaseerd beheer van Configuration Manager voor meer informatie over het beveiligen van Configuration Manager-toepassingen.

Zie ook

Informatie over implementaties van software-updatesEen pakket toewijzen aan een distributiepuntSMS_SoftwareUpdatesPackagede RemoveContent-methode in Class SMS_SoftwareUpdatesPackage