Partilhar via


Como Definir uma Variável de Sequência de Tarefas de Implementação do Sistema Operativo

No Gestor de Configuração, cria-se uma variável de sequência de tarefas de implementação do sistema operativo criando uma instância da classe SMS_TaskSequence_SetVariableAction, adicionando a uma sequência de tarefas. Também pode criar variáveis de sequência de tarefas enquanto a sequência de tarefas está a decorrer no cliente. Para obter mais informações, consulte como utilizar variáveis de sequência de tarefas numa sequência de tarefas do gestor de configuração em execução.

Uma variável de sequência de tarefa é um par de nome/valor que pode aceder através de etapas de sequência de tarefa. Também pode criar variáveis específicas de computador e de recolha. Para obter mais informações, consulte Como Criar uma Variável de Coleção no Gestor de Configuração e Como Criar uma Variável de Computador no Gestor de Configuração.

Nota

As variáveis que são definidas com a classe SMS_TaskSequence_SetVariableAction sobrepõem-se a variáveis que são definidas em outros lugares. Por exemplo, se uma variável de coleção e um SMS_TaskSequence_SetVariableAction têm o mesmo nome, o valor da variável SMS_TaskSequence_SetVariableAction tem precedência.

Para definir uma variável de sequência de tarefa

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

  2. Obtenha uma sequência de tarefa para adicionar a variável da sequência de tarefa. Para obter mais informações, consulte Como Criar uma sequência de tarefas de implementação do sistema operativo.

  3. Criar um exemplo de SMS_TaskSequence_SetVariableAction.

  4. Desabine as propriedades VariableName e VariableValue para a variável que está a adicionar.

  5. Adicione o SMS_TaskSequence_SetVariableAction objeto à sequência de tarefas.

Exemplo

O método exemplo a seguir define um nome e valor variáveis de sequência de tarefa.

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

Sub AddTaskSequenceVariable(connection, taskSequence, variableName, variableValue)     

    Dim variable  
    Dim steps  

    Set variable = connection.Get("SMS_TaskSequence_SetVariableAction").SpawnInstance_  

    variable.Name="MyTaskSequenceVariable"  
    variable.Description = "A task sequence variable"  
    variable.Enabled=True  
    variable.ContinueOnError=False  
    variable.VariableName=variableName  
    variable.VariableValue=variableValue  

    steps= Array(taskSequence.Steps)  

    ReDim steps (UBound (taskSequence.Steps)+1)    

    taskSequence.Steps(UBound(steps))=variable  

End Sub  
public void AddTaskSequenceVariable(  
    WqlConnectionManager connection,   
    IResultObject taskSequence,   
    string variableName,   
    string variableValue)  
{  
    try  
    {  
        // Create the task sequence variable object.  
        IResultObject variable = connection.CreateEmbeddedObjectInstance("SMS_TaskSequence_SetVariableAction");  

        // Populate the properties.  
        variable["Name"].StringValue = "MyTaskSequenceVariable";  
        variable["ContinueOnError"].BooleanValue = false;  
        variable["Description"].StringValue = "A task sequence variable set with SMS_TaskSequence_SetVariableAction";  
        variable["Enabled"].BooleanValue = true;  
        variable["VariableName"].StringValue = variableName;  
        variable["VariableValue"].StringValue = variableValue;  

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

        array.Add(variable);  
        taskSequence.SetArrayItems("Steps", array);  
    }  
    catch (SmsException e)  
    {  
        Console.WriteLine("Failed to set task sequence variable: " + e.Message);  
        throw;  
    }  
}  

Este método de 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 - Gerido: WqlConnectionManager
- VBScript: SWbemServices
- A sequência de tarefas a que a variável é adicionada.
variableName - Gerido: String
- VBScript: String
O nome da variável.
variableValue - Gerido: String
- VBScript: String
O valor para a variável.

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
Visão geral da sequência de tarefas Como utilizar variáveis de sequência de tarefas numa sequência de tarefas do gestor de configuração em execução
Como Ler uma Sequência de Tarefas de um Pacote de Sequência de Tarefas