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
Skonfiguruj połączenie z dostawcą programu SMS.
Utwórz nowy obiekt wdrożenia przy użyciu klasy SMS_UpdatesAssignment .
Wypełnij nowe właściwości wdrożenia.
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.