Compartilhar via


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

Crie uma sequência de tarefas de implementação do sistema operativo, no Configuration Manager, ao criar uma instância da classe SMS_TaskSequencePackage. Esta classe deriva da classe SMS_Package e contém a sequência de tarefas. É anunciado aos clientes que podem executar a sequência de tarefas. A sequência de tarefas está associada ao pacote de sequência de tarefas através do SMS_TaskSequencePackage método SetSequence de classe.

Pode organizar pacotes de sequência de tarefas em categorias ao atribuir-lhes uma categoria com a propriedade categoriade classe SMS_TaskSequence.

Para obter mais informações sobre como criar sequências de tarefas, veja Como Criar uma Sequência de Tarefas. Para obter mais informações sobre pacotes de sequência de tarefas, veja Modelo de Objetos de Sequenciação de Tarefas.

Anuncia um pacote de sequência de tarefas da mesma forma que anuncia um pacote SMS_Packagede Configuration Manager . Para obter mais informações, veja Como Criar um Anúncio.

Para criar um pacote de sequência de tarefas

  1. Configure uma ligação ao Fornecedor de SMS. Para obter mais informações, veja Acerca do Fornecedor de SMS no Configuration Manager.

  2. Criar uma instância de SMS_TaskSequencePackage.

  3. Preencha as propriedades do pacote de sequência de tarefas.

  4. Chame o SMS_TaskSequencePackage método de classe SetSequence para associar uma sequência de tarefas (SMS_TaskSequence) ao pacote de sequência de tarefas.

Exemplo

O método de exemplo seguinte cria um pacote de sequência de tarefas (SMS_TaskSequencePackage) e associa a sequência de tarefas (SMS_TaskSequence) ao mesmo.

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

Sub CreateTaskSequencePackage (connection, taskSequence)

    Dim taskSequencePackage
    Dim packageClass
    Dim objInParams
    Dim objOutParams

    ' Create the new package object.
    Set taskSequencePackage = connection.Get("SMS_TaskSequencePackage").SpawnInstance_

    ' Populate the new package properties.
    taskSequencePackage.Name = "New task sequence package"
    taskSequencePackage.Description = "A new task sequence package description"

    ' Get the parameters object.
    Set packageClass = connection.Get("SMS_TaskSequencePackage")

    Set objInParams = packageClass.Methods_("SetSequence"). _
        inParameters.SpawnInstance_()

    ' Add the input parameters.
    objInParams.TaskSequence =  taskSequence
    objInParams.TaskSequencePackage = taskSequencePackage

    ' Add the sequence.
     Set objOutParams = connection.ExecMethod("SMS_TaskSequencePackage", "SetSequence", objInParams)

End Sub

public IResultObject CreateTaskSequencePackage(
    WqlConnectionManager connection,
    IResultObject taskSequence)
{
    try
    {
        Dictionary<string, object> inParams = new Dictionary<string, object>();

        // Create the new task sequence package.
        IResultObject taskSequencePackage = connection.CreateInstance("SMS_TaskSequencePackage");

        taskSequencePackage["Name"].StringValue = "New task sequence package";
        taskSequencePackage["Description"].StringValue = "A brand new task sequence package";
        taskSequencePackage["Category"].StringValue = "A custom category";

        // Note. Add other package properties as required.

        // Set up parameters that associate the task sequence with the package.
        inParams.Add("TaskSequence", taskSequence);
        inParams.Add("TaskSequencePackage", taskSequencePackage);

        // Associate the task sequence with the package. Note that a call to Put is not required.
        IResultObject result = connection.ExecuteMethod("SMS_TaskSequencePackage", "SetSequence", inParams);

        // The path to the new package.
        Console.WriteLine(result["SavedTaskSequencePackagePath"].StringValue);

        return taskSequencePackage;
    }
    catch (SmsException e)
    {
        Console.WriteLine("Failed to create Task Sequence: " + e.Message);
        throw;
    }
}

Este 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.
taskSequence - Gerido: IResultObject
- VBScript: SWbemObject
Uma sequência de tarefas válida SMS_TaskSequence

Compilando o código

O 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 o Código GeridoComo Ligar a um Fornecedor de SMS no Configuration Manager através da Descrição geral de Como Criar uma Sequência de Tarefas da Sequência de Tarefas da WMI