Procédure pour supprimer des mises à jour d’un package de déploiement

Vous supprimez des mises à jour d’un package de déploiement de mises à jour logicielles, dans Configuration Manager, en obtenant une instance de la classe SMS_SoftwareUpdatesPackage et en utilisant la méthode RemoveContent.

Pour supprimer des mises à jour d’un package de déploiement de mises à jour logicielles

  1. Établissez une connexion au fournisseur SMS.

  2. Obtenez un objet de package existant à l’aide de la SMS_SoftwareUpdatesPackage classe.

  3. Supprimez le contenu de mise à jour du package de gestion des mises à jour logicielles existant en utilisant la RemoveContent méthode.

Exemple

L’exemple de méthode suivant montre comment supprimer des mises à jour d’un package de déploiement de mises à jour logicielles à l’aide de la classe et de SMS_SoftwareUpdatesPackage la RemoveContent méthode.

Importante

Aucun exemple VBScript n’a été inclus, car la RemoveContent méthode ne retourne pas à partir de l’appel de méthode en cas d’échec. Il s’agit d’un problème connu qui est en cours d’analyse.

Pour plus d’informations sur l’appel de l’exemple de code, consultez Appel d’extraits de code de Configuration Manager.

Exemple d’appel de méthode en 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;
    }
}

L’exemple de méthode contient les paramètres suivants :

Paramètre Type Description
connection - Géré : WqlConnectionManager Connexion valide au fournisseur SMS.
existingSUMPackageID - Géré : String ID de package d’un pack de gestion des mises à jour logicielles existant.
removecontentParameters - Géré : dictionary object Ensemble de paramètres (ContentIDs, bRefreshDPs) transmis à la méthode et utilisé avec l’appel de méthode RemoveContent .

Compilation du code

Cet exemple C# requiert :

Espaces de noms

Système

System.Collections.Generic

System.Text

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

adminui.wqlqueryengine

Microsoft.ConfigurationManagement.ManagementProvider

Programmation robuste

Pour plus d’informations sur la gestion des erreurs, voir À propos des erreurs du Configuration Manager.

Sécurité de .NET Framework

Pour plus d’informations sur la sécurisation des applications Configuration Manager, voir Administration basée sur les rôles de Configuration Manager.

Voir aussi

À propos des déploiements de mises à jour logiciellesComment affecter un package à un point de distributionSMS_SoftwareUpdatesPackageméthode RemoveContent en classe SMS_SoftwareUpdatesPackage