Updates configureren en implementeren
U maakt een implementatie van software-updates in Configuration Manager door een exemplaar van de WMI-klasse SMS_UpdatesAssignment Server te maken en de eigenschappen te vullen.
Updates configureren en implementeren
Een verbinding met de SMS-provider instellen.
Maak het nieuwe implementatieobject met behulp van de klasse SMS_UpdatesAssignment .
Vul de nieuwe implementatie-eigenschappen in.
Sla de nieuwe implementatie en eigenschappen op.
Voorbeeld
De volgende voorbeeldmethode laat zien hoe u een implementatie van software-updates maakt met behulp van de klasse SMS_UpdatesAssignment . Houd er rekening mee dat de parameters van de voorbeeldmethode bepaalde eigenschappen van SMS_UpdatesAssignment
weerspiegelen.
Belangrijk
Voor de onderstaande methoden is een matrix van de toegewezen configuratie-items (CI_IDs) vereist. De update-inhoud voor deze CI_IDs moet al zijn gedownload en toegevoegd aan een update-implementatiepakket.
Zie Aanroepen Configuration Manager codefragmenten voor meer informatie over het aanroepen van de voorbeeldcode.
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;
}
}
De voorbeeldmethode heeft de volgende parameters:
Parameter | Type | Beschrijving |
---|---|---|
Connection |
-Beheerd: WqlConnectionManager - VBScript: SWbemServices |
Een geldige verbinding met de SMS-provider. |
newApplyToSubTargets |
-Beheerd: Boolean -Vbscript: Boolean |
Bepaalt of de implementatie van toepassing is op subtargets. -Waar -Valse |
newArrayAssignedCIs |
- Beheerd: Integer matrix- VBScript: Integer matrix |
Een matrix van de toegewezen configuratie-items (CI_IDs). De update-inhoud voor deze CI_IDs moet al zijn gedownload en toegevoegd aan een update-implementatiepakket. |
newAssignmentAction |
-Beheerd: Integer -Vbscript: Integer |
De nieuwe toewijzingsactie. |
newAssignmentDescription |
-Beheerd: String -Vbscript: String |
De nieuwe toewijzingsbeschrijving. |
newAssignmentName |
-Beheerd: String -Vbscript: String |
De naam van de nieuwe toewijzing. |
newDesiredConfigType |
-Beheerd: Integer -Vbscript: Integer |
Het nieuwe gewenste configuratietype. |
newDPLocality |
-Beheerd: Integer -Vbscript: Integer |
De nieuwe distributiepuntlocatie. |
newLocaleID |
-Beheerd: Integer -Vbscript: Integer |
De nieuwe landinstellings-id. |
newLogComplianceToWinEvent |
-Beheerd: Boolean -Vbscript: Boolean |
Bepaalt of naleving wordt vastgelegd in het Windows-gebeurtenislogboek. -Waar -Valse |
newNotifyUser |
-Beheerd: Boolean -Vbscript: Boolean |
Hiermee wordt aangegeven of gebruikers op de hoogte worden gesteld. -Waar -Valse |
newRaiseMomAlertsOnFailure |
-Beheerd: Boolean -Vbscript: Boolean |
Hiermee wordt aangegeven of MOM-waarschuwingen worden gegenereerd bij een fout. -Waar -Valse |
newSendDetailedNonComplianceStatus |
-Beheerd: Boolean -Vbscript: Boolean |
Hiermee wordt aangegeven of de gedetailleerde status van niet-naleving wordt verzonden. -Waar -Valse |
newStartTime |
-Beheerd: String -Vbscript: String |
De nieuwe begintijd. |
newSuppressReboot |
-Beheerd: Integer -Vbscript: Integer |
Hiermee wordt aangegeven of opnieuw opstarten wordt onderdrukt. |
newTargetCollectionID |
-Beheerd: String -Vbscript: String |
De nieuwe doelverzameling-id's. |
newUseGMTTimes |
-Beheerd: Boolean -Vbscript: Boolean |
Hiermee wordt aangegeven of u Coordinated Universal Time (UTC) moet gebruiken. -Waar -Valse |
De code compileren
Voor dit C#-voorbeeld is het volgende vereist:
Naamruimten
Systeem
System.Collections.Generic
System.Text
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Vergadering
adminui.wqlqueryengine
microsoft.configurationmanagement.managementprovider
Robuust programmeren
Zie Over Configuration Manager fouten voor meer informatie over foutafhandeling.
.NET Framework Beveiliging
Zie Configuration Manager op rollen gebaseerd beheer voor meer informatie over het beveiligen van Configuration Manager toepassingen.