Добавление шага в группу развертывания операционной системы
Шаг (действие или группа) добавляется в группу последовательности задач развертывания операционной системы в Configuration Manager путем добавления шага в свойство массиваSMS_TaskSequenceGroup.Steps
.
Добавление шага в группу последовательности задач
Настройте подключение к поставщику SMS. Дополнительные сведения см. в статье Основы поставщика SMS.
Получите объект SMS_TaskSequenceGroup , к которому нужно добавить шаг. Дополнительные сведения см. в статье Создание группы последовательностей задач развертывания операционной системы.
Создайте шаг последовательности задач. Пример создания шага действия см. в разделе Добавление действия последовательности задач развертывания операционной системы.
Добавьте шаг в свойство массива
SMS_TaskSequenceGroup.Steps
.При необходимости переупорядрите шаг в свойстве массива. Дополнительные сведения см. в разделе Переупорядочение последовательности задач развертывания операционной системы.
Пример
В следующем примере метод добавляет действие командной строки в группу последовательности задач.
Сведения о вызове примера кода см. в разделе Вызов фрагментов кода Configuration Manager.
Sub AddStepToGroup(taskSequenceStep, group)
Dim steps
' If needed, create a new steps array.
If IsNull(group.Steps) Then
steps = Array(taskSequenceStep)
group.Steps=steps
Else
' Resize the existing steps and add step.
steps= Array(group.Steps)
ReDim steps (UBound (group.Steps)+1)
group.Steps(UBound(steps))=taskSequenceStep
End if
End Sub
public void AddStepToGroup(
WqlConnectionManager connection,
IResultObject taskSequence,
string groupName)
{
try
{
// Get the group.
List<IResultObject> steps = taskSequence.GetArrayItems("Steps"); // Array of SMS_TaskSequence_Steps.
foreach (IResultObject ro in steps)
{
if (ro["Name"].StringValue == groupName && ro["__CLASS"].StringValue == "SMS_TaskSequence_Group")
{
IResultObject action = connection.CreateEmbeddedObjectInstance("SMS_TaskSequence_RunCommandLineAction");
action["CommandLine"].StringValue = @"C:\donowtingroup.bat";
action["Name"].StringValue = "Action in group " + groupName;
action["Description"].StringValue = "Action in a group";
action["Enabled"].BooleanValue = true;
action["ContinueOnError"].BooleanValue = false;
// Add the step to the task sequence.
List<IResultObject> array = ro.GetArrayItems("Steps");
array.Add(action);
ro.SetArrayItems("Steps", array);
taskSequence.SetArrayItems("Steps", steps);
break;
}
}
}
catch (SmsException e)
{
Console.WriteLine("Failed to create Task Sequence: " + e.Message);
throw;
}
}
Метод примера имеет следующие параметры:
Параметр | Тип | Описание |
---|---|---|
connection |
-Управляемых: WqlConnectionManager — VBScript: SWbemServices |
Допустимое подключение к поставщику SMS. |
taskSequence taskSequenceStep |
-Управляемых: IResultObject — VBScript: SWbemObject |
— допустимая последовательность задач (SMS_TaskSequence), содержащая группу. |
groupName group |
-Управляемых: String -Vbscript: String |
Имя группы, в которую добавляется действие командной строки. Это получается из SMS_TaskSequenceGroup.Name свойства . |
Компиляция программы
Для этого примера на 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
Перемещение шага в группу последовательностей задач развертывания другой операционной системы
Создание группы последовательности задач развертывания операционной системы
Удаление шага из группы развертывания операционной системы
Обзор последовательности задач