Compartilhar via


Como enumerar as sequências de tarefas de implantação do sistema operacional disponíveis

Você enumera as sequências de tarefas de implantação do sistema operacional disponíveis, em Configuration Manager, consultando os pacotes de sequência de tarefas disponíveis. Configuration Manager não mantém instâncias da classe SMS_TaskSequence para sequências de tarefas, mas há uma instância da classe SMS_TaskSequencePackage para cada sequência de tarefas.

Observação

Várias propriedades são lentas e você deve obter a instância do objeto antes de poder acessar as propriedades.

Você também pode acessar pacotes de sequência de tarefas individuais usando a propriedade de chave PackageID . Para obter um exemplo, consulte Como ler um objeto Configuration Manager usando código gerenciado. Depois de ter o pacote de sequência de tarefas, você deve criar um objeto SMS_TaskSequence para a sequência de tarefas antes de poder alterá-lo. Para obter mais informações, consulte Como ler uma sequência de tarefas de um pacote de sequência de tarefas.

Para enumerar os pacotes de sequência de tarefas disponíveis

  1. Configure uma conexão com o Provedor de SMS. Para obter mais informações, confira Os fundamentos do Provedor de SMS.

  2. Consulte o Provedor de SMS para as instâncias disponíveis de SMS_TaskSequencePackage.

  3. Exiba as propriedades necessárias para cada pacote de sequência de tarefas retornado pela consulta.

Exemplo

O método de exemplo a seguir consulta o Provedor de SMS para a instância disponível de SMS_TaskSequencePackage. Para recuperar as propriedades preguiçosas, o exemplo obtém todo o objeto do Provedor de SMS.

Para obter informações sobre como chamar o código de exemplo, consulte Chamando Configuration Manager Snippets de Código.

Sub EnumerateTaskSequencePackages(connection)  

    Set taskSequencePackages= connection.ExecQuery("Select * from SMS_TaskSequencePackage")  

    For Each package in taskSequencePackages  
        WScript.Echo package.Name  
        WScript.Echo package.Sequence  
    Next  
End Sub  
public void EnumerateTaskSequencePackages(  
    WqlConnectionManager connection)  
{  
    IResultObject taskSequencePackages = connection.QueryProcessor.ExecuteQuery("select * from SMS_TaskSequencePackage");  

    foreach (IResultObject ro in taskSequencePackages)  
    {  
        ro.Get();  

        // Get the lazy properties - Sequence property contains the Task sequence XML.  
        Console.WriteLine(ro["Name"].StringValue);  
        Console.WriteLine(ro["Sequence"].StringValue);  

        Console.WriteLine();  
    }  
}  

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

Parâmetro Tipo Descrição
connection -Gerenciado: WqlConnectionManager
- VBScript: SWbemServices
Uma conexão válida com o provedor de SMS.

Compilando o código

O exemplo 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 tratamento de erros, consulte Sobre erros de Configuration Manager.

Segurança do .NET Framework

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

Confira também

Visão geral de objetosComo se conectar a um provedor de SMS no Configuration Manager usando código gerenciado
Como se conectar a um provedor de SMS no Configuration Manager usando o WMI
Como criar um pacote de sequência de tarefas de implantação do sistema operacional
Como ler uma sequência de tarefas de um pacote de sequência de tarefas
Visão geral de sequências de tarefas