Udostępnij za pośrednictwem


Jak skonfigurować i wdrożyć Aktualizacje

Wdrożenie aktualizacji oprogramowania można utworzyć w Configuration Manager, tworząc wystąpienie klasy WMI serwera SMS_UpdatesAssignment i wypełniając właściwości.

Aby skonfigurować i wdrożyć aktualizacje

  1. Skonfiguruj połączenie z dostawcą programu SMS.

  2. Utwórz nowy obiekt wdrożenia przy użyciu klasy SMS_UpdatesAssignment .

  3. Wypełnij nowe właściwości wdrożenia.

  4. Zapisz nowe wdrożenie i właściwości.

Przykład

Poniższa przykładowa metoda pokazuje, jak utworzyć wdrożenie aktualizacji oprogramowania przy użyciu klasy SMS_UpdatesAssignment . Należy pamiętać, że parametry metody przykładowej odzwierciedlają pewne właściwości SMS_UpdatesAssignment.

Ważna

Poniższe metody wymagają tablicy przypisanych elementów konfiguracji (CI_IDs). Zawartość aktualizacji dla tych CI_IDs musi już zostać pobrana i dodana do pakietu wdrażania aktualizacji.

Aby uzyskać informacje na temat wywoływania przykładowego kodu, zobacz Wywoływanie fragmentów kodu 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;  
    }  
}  

Przykładowa metoda ma następujące parametry:

Parametr Wpisać Opis
Connection -Zarządzane: WqlConnectionManager
- VBScript: SWbemServices
Prawidłowe połączenie z dostawcą programu SMS.
newApplyToSubTargets -Zarządzane: Boolean
-Vbscript: Boolean
Określa, czy wdrożenie ma zastosowanie do podtargetów.

-True
-False
newArrayAssignedCIs - Zarządzane: Integer tablica
- VBScript: Integer tablica
Tablica przypisanych elementów konfiguracji (CI_IDs). Zawartość aktualizacji dla tych CI_IDs musi już zostać pobrana i dodana do pakietu wdrażania aktualizacji.
newAssignmentAction -Zarządzane: Integer
-Vbscript: Integer
Nowa akcja przypisania.
newAssignmentDescription -Zarządzane: String
-Vbscript: String
Nowy opis przypisania.
newAssignmentName -Zarządzane: String
-Vbscript: String
Nowa nazwa przypisania.
newDesiredConfigType -Zarządzane: Integer
-Vbscript: Integer
Nowy żądany typ konfiguracji.
newDPLocality -Zarządzane: Integer
-Vbscript: Integer
Nowa lokalizacja punktu dystrybucji.
newLocaleID -Zarządzane: Integer
-Vbscript: Integer
Nowy identyfikator ustawień regionalnych.
newLogComplianceToWinEvent -Zarządzane: Boolean
-Vbscript: Boolean
Określa, czy zgodność jest rejestrowana w dzienniku zdarzeń systemu Windows.

-True
-False
newNotifyUser -Zarządzane: Boolean
-Vbscript: Boolean
Określa, czy użytkownicy są powiadamiani.

-True
-False
newRaiseMomAlertsOnFailure -Zarządzane: Boolean
-Vbscript: Boolean
Określa, czy alerty MOM są zgłaszane w przypadku niepowodzenia.

-True
-False
newSendDetailedNonComplianceStatus -Zarządzane: Boolean
-Vbscript: Boolean
Określa, czy jest wysyłany szczegółowy stan niezgodności.

-True
-False
newStartTime -Zarządzane: String
-Vbscript: String
Nowa godzina rozpoczęcia.
newSuppressReboot -Zarządzane: Integer
-Vbscript: Integer
Określa, czy ponowne uruchomienie jest pomijane.
newTargetCollectionID -Zarządzane: String
-Vbscript: String
Nowe identyfikatory kolekcji docelowej.
newUseGMTTimes -Zarządzane: Boolean
-Vbscript: Boolean
Określa, czy ma być używany uniwersalny czas koordynowany (UTC).

-True
-False

Kompilowanie kodu

Ten przykład języka C# wymaga:

Obszary nazw

System

System.collections.generic

System.text

Microsoft. ConfigurationManagement.ManagementProvider

Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine

Zestawu

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

Niezawodne programowanie

Aby uzyskać więcej informacji na temat obsługi błędów, zobacz Informacje o błędach Configuration Manager.

zabezpieczenia .NET Framework

Aby uzyskać więcej informacji na temat zabezpieczania aplikacji Configuration Manager, zobacz Configuration Manager administracja oparta na rolach.

Zobacz też

Informacje o wdrożeniach aktualizacji oprogramowania

SMS_UpdatesAssignment