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