Перемещение шага в группу последовательностей задач развертывания другой операционной системы
Шаг (действие или группа) можно переместить из одной группы последовательности задач развертывания операционной системы в другую в Configuration Manager, добавив шаг в целевую группу, а затем удалив шаг из исходной группы.
Перемещение шага из одной группы в другую
Настройте подключение к поставщику SMS. Дополнительные сведения см. в статье Основы поставщика SMS.
Получение объектов исходного и целевого SMS_TaskSequenceGroup . Скопируйте шаг, в который нужно добавить шаг. Дополнительные сведения см. в статье Создание группы последовательностей задач развертывания операционной системы.
Добавьте шаг в целевую группу. Дополнительные сведения см. в разделе Добавление шага в группу развертывания операционной системы.
При необходимости переупорягать шаг в свойстве массива целевой группы. Дополнительные сведения см. в разделе Переупорядочение последовательности задач развертывания операционной системы.
Удалите шаг из исходной группы. Дополнительные сведения см. в статье Удаление шага из группы развертывания операционной системы.
Пример
В следующем примере метод перемещает шаг из одной группы последовательности задач в другую.
Для выполнения этого примера потребуется фрагмент кода в разделе Удаление шага из группы развертывания операционной системы .
Сведения о вызове примера кода см. в разделе Вызов фрагментов кода Configuration Manager.
Sub MoveActionToGroup( taskSequenceStep, sourceGroup,targetGroup)
Dim steps
Dim groupSteps
Steps = Array(targetGroup.Steps)
If IsNull(targetGroup.Steps) Then
groupSteps = Array(taskSequenceStep)
targetGroup.Steps = groupSteps
Else
ReDim steps (UBound (targetGroup.Steps)+1)
targetGroup.Steps(UBound(steps))=taskSequenceStep
End If
Call RemoveActionFromGroup(sourceGroup,taskSequenceStep.Name)
End Sub
public void MoveActionToGroup(
IResultObject taskSequenceStep,
IResultObject sourceGroup,
IResultObject targetGroup)
{
try
{
// Add the step to the target group.
// Note. You can use MoveTaskSequenceStepUp and MoveTaskSequenceStepDown
// to place the step in the target group.
List<IResultObject> groupSteps = targetGroup.GetArrayItems("Steps");
groupSteps.Add(taskSequenceStep);
targetGroup.SetArrayItems("Steps", groupSteps);
// Remove action from the source group.
this.RemoveActionFromGroup(sourceGroup, taskSequenceStep["Name"].StringValue);
}
catch (SmsException e)
{
Console.WriteLine("Failed to create Task Sequence: " + e.Message);
throw;
}
}
Метод примера имеет следующие параметры:
Параметр | Тип | Описание |
---|---|---|
taskSequenceStep |
-Управляемых: IResultObject — VBScript: SWbemObject |
Допустимый шаг последовательности задач (группа или действие) (SMS_TaskSequence_Step). |
sourceGroup |
-Управляемых: IResultObject -Vbscript: SWbemObject |
Группа SMS_TaskSequenceGroup , из нее копируется шаг. |
targetGroup |
-Управляемых: IResultObject -Vbscript: SWbemObject |
Группа SMS_TaskSequenceGroup , в который копируется шаг. |
Компиляция программы
Для этого примера на C# требуется следующее:
Пространства имен
System;
System.Collections.Generic;
System.Text
Майкрософт. ConfigurationManagement.ManagementProvider
Майкрософт. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
Надежное программирование
Дополнительные сведения об обработке ошибок см. в разделе Сведения об ошибках Configuration Manager.
Безопасность .NET Framework
Дополнительные сведения о защите приложений Configuration Manager см. в статье Configuration Manager администрирование на основе ролей.
См. также
Общие сведения об объектах. Добавление шага в группу развертывания операционной системы
Подключение к поставщику SMS в Configuration Manager с помощью управляемого кода
Подключение к поставщику SMS в Configuration Manager с помощью WMI
Создание группы последовательности задач развертывания операционной системы
Удаление шага из группы развертывания операционной системы
Обзор последовательности задач