如何将步骤移动到其他作系统部署任务序列组

Configuration Manager,将步骤 (作或组) 从一个作系统部署任务序列组移到另一个作系统部署任务序列组,方法是将步骤添加到目标组,然后从源组中删除该步骤。

将步骤从一个组移到另一个组

  1. 设置与 SMS 提供程序的连接。 有关详细信息,请参阅 SMS 提供程序基础知识

  2. 获取源和目标 SMS_TaskSequenceGroup 对象。 复制要向其添加该步骤的步骤。 有关详细信息,请参阅 如何创建作系统部署任务序列组

  3. 将步骤添加到目标组。 有关详细信息,请参阅 如何向作系统部署组添加步骤

  4. 根据需要对目标组数组属性中的步骤重新排序。 有关详细信息,请参阅 如何重新排序作系统部署任务序列

  5. 从源组中删除步骤。 有关详细信息,请参阅 如何从作系统部署组删除步骤

示例

以下示例方法将步骤从一个任务序列组移到另一个任务序列组。

需要使用 如何从作系统部署组中删除步骤 中的代码片段来运行此示例。

有关调用示例代码的信息,请参阅调用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

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

microsoft.configurationmanagement.managementprovider

adminui.wqlqueryengine

可靠编程

有关错误处理的详细信息,请参阅关于Configuration Manager错误

.NET Framework 安全性

有关保护Configuration Manager应用程序的详细信息,请参阅Configuration Manager基于角色的管理

另请参阅

对象概述如何向作系统部署组添加步骤如何使用托管代码连接到 Configuration Manager 中的 SMS 提供程序如何使用 WMI 连接到 Configuration Manager 中的 SMS 提供程序如何创建作系统部署任务序列组如何从作系统部署组任务序列中删除步骤概述