Настройка и развертывание Обновления
Вы создаете развертывание обновлений программного обеспечения в Configuration Manager путем создания экземпляра класса WMI сервера SMS_UpdatesAssignment и заполнения свойств.
Настройка и развертывание обновлений
Настройте подключение к поставщику SMS.
Создайте новый объект развертывания с помощью класса SMS_UpdatesAssignment .
Заполните новые свойства развертывания.
Сохраните новое развертывание и свойства.
Пример
В следующем примере метода показано, как создать развертывание обновлений программного обеспечения с помощью класса SMS_UpdatesAssignment . Обратите внимание, что параметры примера метода отражают определенные свойства SMS_UpdatesAssignment
.
Важно!
Для методов ниже требуется массив назначенных элементов конфигурации (CI_IDs). Содержимое обновлений для этих CI_IDs должно быть уже загружено и добавлено в пакет развертывания обновлений.
Сведения о вызове примера кода см. в разделе Вызов фрагментов кода 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;
}
}
Метод примера имеет следующие параметры:
Параметр | Тип | Описание |
---|---|---|
Connection |
-Управляемых: WqlConnectionManager — VBScript: SWbemServices |
Допустимое подключение к поставщику SMS. |
newApplyToSubTargets |
-Управляемых: Boolean -Vbscript: Boolean |
Определяет, применяется ли развертывание к подцелям. -Истинный -Ложных |
newArrayAssignedCIs |
— Управляемый: Integer массив— VBScript: Integer массив |
Массив назначенных элементов конфигурации (CI_IDs). Содержимое обновлений для этих CI_IDs должно быть уже загружено и добавлено в пакет развертывания обновлений. |
newAssignmentAction |
-Управляемых: Integer -Vbscript: Integer |
Новое действие назначения. |
newAssignmentDescription |
-Управляемых: String -Vbscript: String |
Описание нового назначения. |
newAssignmentName |
-Управляемых: String -Vbscript: String |
Новое имя назначения. |
newDesiredConfigType |
-Управляемых: Integer -Vbscript: Integer |
Новый требуемый тип конфигурации. |
newDPLocality |
-Управляемых: Integer -Vbscript: Integer |
Новое расположение точки распространения. |
newLocaleID |
-Управляемых: Integer -Vbscript: Integer |
Новый идентификатор языкового стандарта. |
newLogComplianceToWinEvent |
-Управляемых: Boolean -Vbscript: Boolean |
Определяет, регистрируется ли соответствие в журнале событий Windows. -Истинный -Ложных |
newNotifyUser |
-Управляемых: Boolean -Vbscript: Boolean |
Определяет, уведомляются ли пользователи. -Истинный -Ложных |
newRaiseMomAlertsOnFailure |
-Управляемых: Boolean -Vbscript: Boolean |
Определяет, создаются ли оповещения MOM при сбое. -Истинный -Ложных |
newSendDetailedNonComplianceStatus |
-Управляемых: Boolean -Vbscript: Boolean |
Определяет, отправляется ли подробное состояние несоответствия. -Истинный -Ложных |
newStartTime |
-Управляемых: String -Vbscript: String |
Новое время начала. |
newSuppressReboot |
-Управляемых: Integer -Vbscript: Integer |
Определяет, подавляется ли перезагрузка. |
newTargetCollectionID |
-Управляемых: String -Vbscript: String |
Новые идентификаторы целевой коллекции. |
newUseGMTTimes |
-Управляемых: Boolean -Vbscript: Boolean |
Определяет, следует ли использовать универсальное координированное время (UTC). -Истинный -Ложных |
Компиляция программы
Для этого примера на C# требуется следующее:
Пространства имен
System;
System.Collections.Generic;
System.Text
Майкрософт. ConfigurationManagement.ManagementProvider
Майкрософт. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
adminui.wqlqueryengine
microsoft.configurationmanagement.managementprovider
Надежное программирование
Дополнительные сведения об обработке ошибок см. в разделе Сведения об ошибках Configuration Manager.
Безопасность .NET Framework
Дополнительные сведения о защите приложений Configuration Manager см. в статье Configuration Manager администрирование на основе ролей.
См. также
Сведения о развертываниях обновления программного обеспечения