Compartilhar via


Como Criar uma Sequência de Tarefas de Implementação do Sistema Operativo

Pode criar uma sequência de tarefas de implementação do sistema operativo Configuration Manager ao criar uma instância da classe SMS_TaskSequence.

Uma sequência de tarefas contém um ou mais passos que são executados sequencialmente no computador cliente. Para obter mais informações, veja Modelo de Objeto de Sequência de Tarefas de Implementação do Sistema Operativo.

Em seguida, a sequência de tarefas é empacotada num SMS_TaskSequencePackage e anunciada para o computador cliente.

Para criar uma sequência de tarefas

  1. Configure uma ligação ao Fornecedor de SMS. Para obter mais informações, veja Noções básicas do Fornecedor de SMS.

  2. Criar um objeto de sequência SMS_TaskSequence de tarefas.

  3. Adicione ações e, conforme necessário, adicione grupos à ação. Para obter mais informações, veja Como Adicionar uma Ação de Sequência de Tarefas de Implementação do Sistema Operativo.

  4. Associe a sequência de tarefas a um pacote de sequência de tarefas. Para obter mais informações, veja Como Criar um Pacote de Sequência de Tarefas de Implementação do Sistema Operativo.

  5. Anuncie a sequência de tarefas ao computador cliente. Para obter mais informações, veja Como Criar um Anúncio.

Exemplo

O método de exemplo seguinte cria uma sequência de tarefas que instala um programa de software. O exemplo também cria um pacote de sequência de tarefas ao chamar o exemplo que está definido em Como Criar um Pacote de Sequência de Tarefas de Implementação do Sistema Operativo.

Para obter informações sobre como chamar o código de exemplo, veja Chamar Configuration Manager Fragmentos de Código.

Sub CreateInstallSoftwareTaskSequence(connection,name, description, packageID, programName)

    ' Create the task sequence.
    set taskSequence = connection.Get("SMS_TaskSequence").SpawnInstance_

    ' Create the action.
    set action = connection.Get("SMS_TaskSequence_InstallSoftwareAction").SpawnInstance_

    action.ProgramName=programName
    action.PackageID=packageID
    action.Name=name
    action.Enabled=true
    action.ContinueOnError=false

    ' Create an array to hold the action.
    actionSteps= array(action)
    ' Add the array to the task sequence.
    taskSequence.Steps=actionSteps

    wscript.echo taskSequence.Steps(0).Name
    call CreateTaskSequencePackage (connection, taskSequence)

 End Sub
public void CreateInstallSoftwareTaskSequence(
    WqlConnectionManager connection,
    string name,
    string packageId,
    string programName)
{
    try
    {
        // Create the task sequence.
        IResultObject taskSequence = connection.CreateInstance("SMS_TaskSequence");

        IResultObject ro = connection.CreateEmbeddedObjectInstance("SMS_TaskSequence_InstallSoftwareAction");
        ro["ProgramName"].StringValue = programName;
        ro["packageId"].StringValue = packageId;
        ro["Name"].StringValue = name;
        ro["Enabled"].BooleanValue = true;
        ro["ContinueOnError"].BooleanValue = false;

        // Add the step to the task sequence.
        List<IResultObject> array = taskSequence.GetArrayItems("Steps");

        array.Add(ro);

        taskSequence.SetArrayItems("Steps", array);

        // Create the task sequence package.
        this.CreateTaskSequencePackage(connection, taskSequence);
    }
    catch (SmsException e)
    {
        Console.WriteLine("Failed to create Task Sequence: " + e.Message);
        throw;
    }
}

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

Parâmetro Tipo Descrição
Connection - Gerido: WqlConnectionManager
- VBScript: SWbemServices
Uma ligação válida ao Fornecedor de SMS.
name - Gerido: String
- VBScript: String
O nome do passo da sequência de tarefas.
description - VBScript: String Descrição do passo da sequência de tarefas.
packageID - Gerido: String
- VBScript: String
O identificador do pacote que contém o software a ser instalado. Obtido a partir de SMS_Package.PackageID.
programName - Gerido: String
- VBScript: String
O nome do programa a ser instalado. Obtido a partir de SMS_Program.ProgramName.

Compilando o código

Este exemplo de C# requer:

Namespaces

System

System.Collections.Generic

System.Text

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

microsoft.configurationmanagement.managementprovider

adminui.wqlqueryengine

Programação robusta

Para obter mais informações sobre o processamento de erros, veja About Configuration Manager Errors (Acerca dos Erros de Configuration Manager).

Segurança do .NET Framework

Para obter mais informações sobre como proteger aplicações Configuration Manager, veja Configuration Manager administração baseada em funções.

Confira também

Descrição geral de ObjetosComo Ligar a um Fornecedor de SMS no Configuration Manager ao Utilizar Código GeridoComo Ligar a um Fornecedor de SMS no Configuration Manager através da descrição geral da sequência de tarefas WMI Como Criar um Pacote de Sequência de Tarefas de Implementação do Sistema Operativo