Partager via


Guide pratique pour configurer et déployer des Mises à jour

Vous créez un déploiement de mises à jour logicielles, dans Configuration Manager, en créant une instance de la classe WMI SMS_UpdatesAssignment Server et en remplissant les propriétés.

Pour configurer et déployer des mises à jour

  1. Configurez une connexion au fournisseur SMS.

  2. Créez l’objet de déploiement à l’aide de la classe SMS_UpdatesAssignment .

  3. Remplissez les nouvelles propriétés de déploiement.

  4. Enregistrez le nouveau déploiement et les nouvelles propriétés.

Exemple

L’exemple de méthode suivant montre comment créer un déploiement de mises à jour logicielles à l’aide de la classe SMS_UpdatesAssignment . Notez que les paramètres de l’exemple de méthode reflètent certaines propriétés de SMS_UpdatesAssignment.

Importante

Les méthodes ci-dessous nécessitent un tableau des éléments de configuration attribués (CI_IDs). Le contenu de mise à jour de ces CI_IDs doit avoir déjà été téléchargé et ajouté à un package de déploiement de mises à jour.

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


Sub ConfigureAndDeploySUMUpdates(connection,                             _
                                  newApplyToSubTargets,                  _
                                  newArrayAssignedCIs,                   _
                                  newAssignmentAction,                   _
                                  newAssignmentDescription,              _
                                  newAssignmentName,                     _
                                  newDesiredConfigType,                  _
                                  newDPLocality,                         _
                                  newLocaleID,                           _
                                  newLogComplianceToWinEvent,            _
                                  newNotifyUser,                         _
                                  newRaiseMomAlertsOnFailure,            _
                                  newSendDetailedNonComplianceStatus,    _
                                  newStartTime,                          _
                                  newSuppressReboot,                     _
                                  newTargetCollectionID,                 _
                                  newUseGMTTimes)

  ' Create the new deployment object.
  Set newSUMUpdatesAssignment = connection.Get("SMS_UpdatesAssignment").SpawnInstance_

  ' Populate the deployment properties.
  newSUMUpdatesAssignment.ApplyToSubTargets = newApplyToSubTargets
  newSUMUpdatesAssignment.AssignedCIs = newArrayAssignedCIs
  newSUMUpdatesAssignment.AssignmentAction = newAssignmentAction
  newSUMUpdatesAssignment.AssignmentDescription = newAssignmentDescription
  newSUMUpdatesAssignment.AssignmentName = newAssignmentName
  newSUMUpdatesAssignment.DesiredConfigType = newDesiredConfigType
  newSUMUpdatesAssignment.DPLocality = newDPLocality
  newSUMUpdatesAssignment.LocaleID = newLocaleID
  newSUMUpdatesAssignment.LogComplianceToWinEvent = newLogComplianceToWinEvent
  newSUMUpdatesAssignment.NotifyUser = newNotifyUser
  newSUMUpdatesAssignment.RaiseMomAlertsOnFailure = newRaiseMomAlertsOnFailure
  newSUMUpdatesAssignment.SendDetailedNonComplianceStatus = newSendDetailedNonComplianceStatus
  newSUMUpdatesAssignment.StartTime = newStartTime
  newSUMUpdatesAssignment.SuppressReboot = newSuppressReboot
  newSUMUpdatesAssignment.TargetCollectionID = newTargetCollectionID
  newSUMUpdatesAssignment.UseGMTTimes = newUseGMTTimes

  ' Save the new deployment and properties.
  newSUMUpdatesAssignment.Put_

  ' Output the new deployment name.
  Wscript.Echo "Created new deployment " & newSUMUpdatesAssignment.AssignmentName

End Sub


public void ConfigureAndDeploySUMUpdates(WqlConnectionManager connection,
                                        bool newApplyToSubTargets,
                                        int[] newArrayAssignedCIs,
                                        int newAssignmentAction,
                                        string newAssignmentDescription,
                                        string newAssignmentName,
                                        int newDesiredConfigType,
                                        int newDPLocality,
                                        int newLocaleID,
                                        bool newLogComplianceToWinEvent,
                                        bool newNotifyUser,
                                        bool newRaiseMomAlertsOnFailure,
                                        bool newSendDetailedNonComplianceStatus,
                                        string newStartTime,
                                        int newSuppressReboot,
                                        string newTargetCollectionID,
                                        bool newUseGMTTimes)
{
    try
    {

        // Create the deployment object.
        IResultObject newSUMUpdatesAssignment = connection.CreateInstance("SMS_UpdatesAssignment");

        // Populate new deployment properties.
        // Note: newTemplateName must be unique.

        newSUMUpdatesAssignment["ApplyToSubTargets"].BooleanValue = newApplyToSubTargets;
        newSUMUpdatesAssignment["AssignedCIs"].IntegerArrayValue = newArrayAssignedCIs;
        newSUMUpdatesAssignment["AssignmentAction"].IntegerValue = newAssignmentAction;
        newSUMUpdatesAssignment["AssignmentDescription"].StringValue = newAssignmentDescription;
        newSUMUpdatesAssignment["AssignmentName"].StringValue = newAssignmentName;
        newSUMUpdatesAssignment["DesiredConfigType"].IntegerValue = newDesiredConfigType;
        newSUMUpdatesAssignment["DPLocality"].IntegerValue = newDPLocality;
        newSUMUpdatesAssignment["LocaleID"].IntegerValue = newLocaleID;
        newSUMUpdatesAssignment["LogComplianceToWinEvent"].BooleanValue = newLogComplianceToWinEvent;
        newSUMUpdatesAssignment["NotifyUser"].BooleanValue = newNotifyUser;
        newSUMUpdatesAssignment["RaiseMomAlertsOnFailure"].BooleanValue = newRaiseMomAlertsOnFailure;
        newSUMUpdatesAssignment["SendDetailedNonComplianceStatus"].BooleanValue = newSendDetailedNonComplianceStatus;
        newSUMUpdatesAssignment["StartTime"].DateTimeValue = newStartTime;
        newSUMUpdatesAssignment["SuppressReboot"].IntegerValue = newSuppressReboot;
        newSUMUpdatesAssignment["TargetCollectionID"].StringValue = newTargetCollectionID;
        newSUMUpdatesAssignment["UseGMTTimes"].BooleanValue = newUseGMTTimes;

        // Save new deployment and new deployment properties.
        newSUMUpdatesAssignment.Put();

        // Output the new deployment name.
        Console.WriteLine("Created deployment: " + newAssignmentName);
    }

    catch (SmsException ex)
    {
        Console.WriteLine("Failed to create newSUMUpdatesAssignment. Error: " + ex.Message);
        throw;
    }
}

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

Paramètre Type Description
Connection -Géré: WqlConnectionManager
- VBScript : SWbemServices
Connexion valide au fournisseur SMS.
newApplyToSubTargets -Géré: Boolean
-Vbscript: Boolean
Détermine si le déploiement s’applique aux sous-cibles.

-Vrai
-Faux
newArrayAssignedCIs - Géré : Integer tableau
- VBScript : Integer tableau
Tableau des éléments de configuration attribués (CI_IDs). Le contenu de mise à jour de ces CI_IDs doit avoir déjà été téléchargé et ajouté à un package de déploiement de mises à jour.
newAssignmentAction -Géré: Integer
-Vbscript: Integer
Nouvelle action d’affectation.
newAssignmentDescription -Géré: String
-Vbscript: String
Description de la nouvelle affectation.
newAssignmentName -Géré: String
-Vbscript: String
Nom de la nouvelle affectation.
newDesiredConfigType -Géré: Integer
-Vbscript: Integer
Nouveau type de configuration souhaité.
newDPLocality -Géré: Integer
-Vbscript: Integer
Nouvelle localité du point de distribution.
newLocaleID -Géré: Integer
-Vbscript: Integer
NOUVEL ID de paramètres régionaux.
newLogComplianceToWinEvent -Géré: Boolean
-Vbscript: Boolean
Détermine si la conformité est consignée dans le journal des événements Windows.

-Vrai
-Faux
newNotifyUser -Géré: Boolean
-Vbscript: Boolean
Identifie si les utilisateurs sont avertis.

-Vrai
-Faux
newRaiseMomAlertsOnFailure -Géré: Boolean
-Vbscript: Boolean
Identifie si les alertes MOM sont déclenchées en cas d’échec.

-Vrai
-Faux
newSendDetailedNonComplianceStatus -Géré: Boolean
-Vbscript: Boolean
Identifie si l’état de non-conformité détaillé est envoyé.

-Vrai
-Faux
newStartTime -Géré: String
-Vbscript: String
Nouvelle heure de début.
newSuppressReboot -Géré: Integer
-Vbscript: Integer
Identifie si le redémarrage est supprimé.
newTargetCollectionID -Géré: String
-Vbscript: String
NOUVEAUX ID de collection cible.
newUseGMTTimes -Géré: Boolean
-Vbscript: Boolean
Identifie s’il faut utiliser le temps universel coordonné (UTC).

-Vrai
-Faux

Compilation du code

Cet exemple C# nécessite :

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, consultez À propos des erreurs Configuration Manager.

Sécurité de .NET Framework

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

Voir aussi

A propos des déploiements de mise à jour logicielles

SMS_UpdatesAssignment