Konfigurieren und Bereitstellen von Updates

Sie erstellen eine Softwareupdatebereitstellung in Configuration Manager, indem Sie eine instance der SMS_UpdatesAssignment Server WMI-Klasse erstellen und die Eigenschaften ausfüllen.

So konfigurieren und stellen Sie Updates bereit

  1. Richten Sie eine Verbindung mit dem SMS-Anbieter ein.

  2. Erstellen Sie das neue Bereitstellungsobjekt mithilfe der Klasse SMS_UpdatesAssignment .

  3. Füllen Sie die neuen Bereitstellungseigenschaften aus.

  4. Speichern Sie die neue Bereitstellung und die neuen Eigenschaften.

Beispiel

Die folgende Beispielmethode zeigt, wie Sie eine Bereitstellung von Softwareupdates mithilfe der SMS_UpdatesAssignment Klasse erstellen. Beachten Sie, dass die Parameter der Beispielmethode bestimmte Eigenschaften von SMS_UpdatesAssignmentwiderspiegeln.

Wichtig

Die folgenden Methoden erfordern ein Array der zugewiesenen Konfigurationselemente (CI_IDs). Der Updateinhalt für diese CI_IDs muss bereits heruntergeladen und einem Updatebereitstellungspaket hinzugefügt worden sein.

Informationen zum Aufrufen des Beispielcodes finden Sie unter Aufrufen von Configuration Manager-Codeausschnitten.


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

Die Beispielmethode hat die folgenden Parameter:

Parameter Typ Beschreibung
Connection - Verwaltet: WqlConnectionManager
- VBScript: SWbemDienste
Eine gültige Verbindung mit dem SMS-Anbieter.
newApplyToSubTargets - Verwaltet: Boolean
- VBScript: Boolean
Bestimmt, ob die Bereitstellung für Unterziele gilt.

- Wahr
- Falsch
newArrayAssignedCIs - Verwaltet: Integer Array
- VBScript: Integer Array
Ein Array der zugewiesenen Konfigurationselemente (CI_IDs). Der Updateinhalt für diese CI_IDs muss bereits heruntergeladen und einem Updatebereitstellungspaket hinzugefügt worden sein.
newAssignmentAction - Verwaltet: Integer
- VBScript: Integer
Die neue Zuordnungsaktion.
newAssignmentDescription - Verwaltet: String
- VBScript: String
Die neue Aufgabenbeschreibung.
newAssignmentName - Verwaltet: String
- VBScript: String
Der Name der neuen Zuweisung.
newDesiredConfigType - Verwaltet: Integer
- VBScript: Integer
Der neue Typ der gewünschten Konfiguration.
newDPLocality - Verwaltet: Integer
- VBScript: Integer
Die neue Verteilungspunktlokalität.
newLocaleID - Verwaltet: Integer
- VBScript: Integer
Die neue Gebietsschema-ID.
newLogComplianceToWinEvent - Verwaltet: Boolean
- VBScript: Boolean
Bestimmt, ob die Konformität im Windows-Ereignisprotokoll protokolliert wird.

- Wahr
- Falsch
newNotifyUser - Verwaltet: Boolean
- VBScript: Boolean
Gibt an, ob Benutzer benachrichtigt werden.

- Wahr
- Falsch
newRaiseMomAlertsOnFailure - Verwaltet: Boolean
- VBScript: Boolean
Gibt an, ob bei einem Fehler MOM-Warnungen ausgelöst werden.

- Wahr
- Falsch
newSendDetailedNonComplianceStatus - Verwaltet: Boolean
- VBScript: Boolean
Gibt an, ob ein detaillierter Status bei Nichtkompatibilität gesendet wird.

- Wahr
- Falsch
newStartTime - Verwaltet: String
- VBScript: String
Die neue Startzeit.
newSuppressReboot - Verwaltet: Integer
- VBScript: Integer
Gibt an, ob der Neustart unterdrückt wird.
newTargetCollectionID - Verwaltet: String
- VBScript: String
Die neuen Zielsammlungs-IDs.
newUseGMTTimes - Verwaltet: Boolean
- VBScript: Boolean
Gibt an, ob die koordinierte Weltzeit (UTC) verwendet werden soll.

- Wahr
- Falsch

Kompilieren des Codes

Dieses C#-Beispiel erfordert:

Namespaces

System

System.Collections.Generic

System.Text

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

adminui.wqlqueryengine

Microsoft.ConfigurationManagement.ManagementProvider

Robuste Programmierung

Weitere Informationen zur Fehlerbehandlung finden Sie unter Informationen zu Configuration Manager-Fehlern.

.NET Framework-Sicherheit

Weitere Informationen zum Sichern von Configuration Manager-Anwendungen finden Sie unter rollenbasierte Verwaltung von Configuration Manager.

Siehe auch

Informationen über die Bereitstellung von Softwareupdates

SMS_UpdatesAssignment