Dela via


Konfigurera och distribuera Uppdateringar

Du skapar en distribution av programuppdateringar i Configuration Manager genom att skapa en instans av SMS_UpdatesAssignment-serverns WMI-klass och fylla i egenskaperna.

Så här konfigurerar och distribuerar du uppdateringar

  1. Konfigurera en anslutning till SMS-providern.

  2. Skapa det nya distributionsobjektet med hjälp av klassen SMS_UpdatesAssignment .

  3. Fyll i de nya distributionsegenskaperna.

  4. Spara den nya distributionen och egenskaperna.

Exempel

Följande exempelmetod visar hur du skapar en distribution av programuppdateringar med hjälp av klassen SMS_UpdatesAssignment . Observera att parametrarna för exempelmetoden återspeglar vissa egenskaper för SMS_UpdatesAssignment.

Viktigt

Metoderna nedan kräver en matris med de tilldelade konfigurationsobjekten (CI_IDs). Uppdateringsinnehållet för dessa CI_IDs måste redan ha laddats ned och lagts till i ett distributionspaket för uppdateringar.

Information om hur du anropar exempelkoden finns i Anropa Configuration Manager kodfragment.


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;  
    }  
}  

Exempelmetoden har följande parametrar:

Parameter Typ Beskrivning
Connection -Hanterade: WqlConnectionManager
– VBScript: SWbemServices
En giltig anslutning till SMS-providern.
newApplyToSubTargets -Hanterade: Boolean
-Vbscript: Boolean
Avgör om distributionen gäller för undermål.

-Sant
-Falska
newArrayAssignedCIs – Hanterad: Integer matris
– VBScript: Integer matris
En matris med de tilldelade konfigurationsobjekten (CI_IDs). Uppdateringsinnehållet för dessa CI_IDs måste redan ha laddats ned och lagts till i ett distributionspaket för uppdateringar.
newAssignmentAction -Hanterade: Integer
-Vbscript: Integer
Den nya tilldelningsåtgärden.
newAssignmentDescription -Hanterade: String
-Vbscript: String
Den nya tilldelningsbeskrivningen.
newAssignmentName -Hanterade: String
-Vbscript: String
Det nya tilldelningsnamnet.
newDesiredConfigType -Hanterade: Integer
-Vbscript: Integer
Den nya önskade konfigurationstypen.
newDPLocality -Hanterade: Integer
-Vbscript: Integer
Den nya distributionsplatslokaliteten.
newLocaleID -Hanterade: Integer
-Vbscript: Integer
Det nya språkvariant-ID:t.
newLogComplianceToWinEvent -Hanterade: Boolean
-Vbscript: Boolean
Avgör om kompatibilitet loggas i Windows-händelseloggen.

-Sant
-Falska
newNotifyUser -Hanterade: Boolean
-Vbscript: Boolean
Anger om användare meddelas.

-Sant
-Falska
newRaiseMomAlertsOnFailure -Hanterade: Boolean
-Vbscript: Boolean
Anger om MOM-aviseringar aktiveras vid fel.

-Sant
-Falska
newSendDetailedNonComplianceStatus -Hanterade: Boolean
-Vbscript: Boolean
Anger om detaljerad inkompatibilitetsstatus skickas.

-Sant
-Falska
newStartTime -Hanterade: String
-Vbscript: String
Den nya starttiden.
newSuppressReboot -Hanterade: Integer
-Vbscript: Integer
Anger om omstarten är undertryckt.
newTargetCollectionID -Hanterade: String
-Vbscript: String
De nya målsamlings-ID:n.
newUseGMTTimes -Hanterade: Boolean
-Vbscript: Boolean
Anger om coordinated universal time (UTC) ska användas.

-Sant
-Falska

Kompilera koden

Det här C#-exemplet kräver:

Namnområden

System

System.Collections.Generic

System.Text

Microsoft. ConfigurationManagement.ManagementProvider

Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine

Församlingen

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

Robust programmering

Mer information om felhantering finns i Om Configuration Manager fel.

.NET Framework Säkerhet

Mer information om hur du skyddar Configuration Manager program finns i Configuration Manager rollbaserad administration.

Se även

Om programuppdateringsdistributioner

SMS_UpdatesAssignment