Поделиться через


Удаление шага из группы развертывания операционной системы

В Configuration Manager вы удаляете шаг (действие или группу) из группы последовательности задач развертывания операционной системы, удалив шаг из списка шагов последовательности задач группы.

Удаление шага из группы

  1. Настройте подключение к поставщику SMS. Дополнительные сведения см. в статье Основы поставщика SMS.

  2. Получите объект SMS_TaskSequence_Group , к которому нужно добавить шаг. Дополнительные сведения см. в статье Создание группы последовательностей задач развертывания операционной системы.

  3. Удалите действие из свойства массива SMS_TaskSequence_Group.Steps.

Пример

В следующем примере метод удаляет действие из группы последовательности задач.

Сведения о вызове примера кода см. в разделе Вызов фрагментов кода Configuration Manager.

Sub RemoveActionFromGroup(taskSequenceGroup, actionName)  

    Dim i  

    If taskSequenceGroup.SystemProperties_("__CLASS")<>"SMS_TaskSequence_Group" Then  
        wscript.echo "Not a group"  
        return  
    End If  

        Dim newArray  
        Dim actionStep  

        newArray = Array(taskSequenceGroup.Steps)  
        ReDim newArray(UBound(taskSequenceGroup.Steps))  

        i=0  
        for each  actionStep in taskSequenceGroup.Steps  
            If actionStep.Name = actionName and _  
              actionStep.SystemProperties_("__SUPERCLASS") = "SMS_TaskSequence_Action" Then  
                 ReDim preserve newArray(UBound(newArray)-1) ' shrink the Array  
            else  
               wscript.echo actionStep.Name  
               Set newArray(i)=actionStep ' copy it  
               i=i+1  
            End If     

         Next  

         taskSequenceGroup.Steps=newArray  

 End Sub  
public void RemoveActionFromGroup(  
    IResultObject taskSequenceGroup,   
    string actionName)  
{  
    try  
    {  
        if (taskSequenceGroup["__CLASS"].StringValue != "SMS_TaskSequence_Group")  
        {  
            throw new System.InvalidOperationException("Not a group");  
        }  

        List<IResultObject> groupSteps = taskSequenceGroup.GetArrayItems("Steps");  
        IResultObject actionFound = null;  
        foreach (IResultObject actionStep in groupSteps)  
        {  
            if (actionStep["Name"].StringValue == actionName && actionStep["__SUPERCLASS"].StringValue == "SMS_TaskSequence_Action")  
            {  
                actionFound = actionStep;  
                break;  
            }  
        }  

        groupSteps.Remove(actionFound);  
        taskSequenceGroup.SetArrayItems("Steps", groupSteps);  
    }  
    catch (SmsException e)  
    {  
        Console.WriteLine("Failed to remove action: " + e.Message);  
        throw;  
    }  
}  

Метод примера имеет следующие параметры:

Параметр Тип Описание
taskSequenceGroup — Управляемый: IResultObject
— VBScript: SWbemObject
Группа последовательности задач, содержащая удаляемое действие.
actionName -Управляемых: String
-Vbscript: String
Имя удаляемого действия. Это можно получить из свойства SMS_TaskSequenceAction.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
Перемещение шага в группу последовательностей задач развертывания другой операционной системы
Создание группы последовательности задач развертывания операционной системы
Обзор последовательности задач