Partilhar via


Como Adicionar um Passo a um Grupo de Implementação do Sistema Operativo

Adicione um passo (uma ação ou um grupo) a um grupo de sequência de tarefas de implementação do sistema operativo, no Gestor de Configuração, adicionando o passo à propriedade da SMS_TaskSequenceGroup.Steps matriz.

Para adicionar um passo a um grupo de sequência de tarefas

  1. Configurar uma ligação com o Fornecedor DE SMS. Para mais informações, consulte os fundamentos do Fornecedor de SMS.

  2. Obtenha o SMS_TaskSequenceGroup objeto a que quer adicionar o passo. Para obter mais informações, consulte Como Criar um Grupo de Sequência de Tarefas de Implementação do Sistema Operativo.

  3. Crie o passo da sequência de tarefa. Para um exemplo de criação de um passo de ação, consulte como adicionar uma ação de sequência de tarefas de implementação do sistema operativo.

  4. Adicione o passo à propriedade da SMS_TaskSequenceGroup.Steps matriz.

  5. Reencomenda o passo dentro da propriedade da matriz, se necessário. Para obter mais informações, consulte Como reenca encomendá-lo uma sequência de tarefas de implementação do sistema operativo

Exemplo

O método exemplo a seguir adiciona uma ação de linha de comando a um grupo de sequência de tarefas.

Para obter informações sobre a chamada do código de amostra, consulte o Código de Identificação do Gestor de Chamadas.

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;  
    }  
}  

O método exemplo tem os seguintes parâmetros:

Parâmetro Tipo Description
connection - Gerido: WqlConnectionManager
- VBScript: SWbemServices
Uma ligação válida ao Fornecedor de SMS.
taskSequence

taskSequenceStep
- Gerido: IResultObject
- VBScript: SWbemObject
- Uma sequência de tarefas válida(SMS_TaskSequence)que contém o grupo.
groupName

group
- Gerido: String
- VBScript: String
O nome do grupo a que a ação da linha de comando é adicionada. Isto é obtido a partir da SMS_TaskSequenceGroup.Name propriedade.

A Compilar o Código

Este exemplo C# requer:

Espaços de nomes

Sistema

System.Collections.Generic

System.Text

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assemblagem

microsoft.configurationmanagement.managementprovider

adminui.wqlqueryengine

Programação Robusta

Para obter mais informações sobre o tratamento de erros, consulte Sobre erros do Gestor de Configuração.

Segurança do .NET Framework

Para obter mais informações sobre a segurança das aplicações do Gestor de Configuração, consulte a administração baseada em funções do Gestor de Configuração.

Consulte também

Visão geral de objetos Como Ligação a um fornecedor de SMS no Gestor de Configuração através da utilização do Código Gerido
Como Ligação a um fornecedor de SMS no Gestor de Configuração através da utilização do WMI
Como mover um passo para um grupo de sequência de tarefas de implementação de sistema operativo diferente
Como criar um grupo de sequências de tarefas de implementação do sistema operativo
Como remover um passo de um grupo de implementação do sistema operativo
Task sequence overview (Descrição geral da sequência de tarefas)