Como ler uma sequência de tarefas de um pacote de sequência de tarefas
Você lê uma sequência de tarefas de um pacote de sequência de tarefas, em Configuration Manager, chamando o método GetSequence da classe SMS_TaskSequencePackage. GetSequence retorna um objeto SMS_TaskSequence que você pode alterar e, em seguida, colocar de volta no pacote usando o método SetSequence . Para obter um exemplo de como usar SetSequence, consulte Como criar um pacote de sequência de tarefas de implantação do sistema operacional.
Para ler uma sequência de tarefas de um pacote de sequência de tarefas
Configure uma conexão com o Provedor de SMS. Para obter mais informações, confira Os fundamentos do Provedor de SMS.
Consulte o Provedor de SMS do SMS_TaskSequencePackage do qual você deseja carregar a sequência.
Chame o método GetSequence da classe SMS_TaskSequencePackage para obter o objeto SMS_TaskSequence.
Faça alterações na sequência de tarefas e coloque-as novamente no pacote usando SetSequence.
Exemplo
O método de exemplo a seguir retorna o objeto de sequência de tarefas (SMS_TaskSequence) do pacote fornecido.
Para obter informações sobre como chamar o código de exemplo, consulte Chamando Configuration Manager Snippets de Código.
Function ReadTaskSequence(connection, taskSequencePackage)
' Get the parameters object.
Set packageClass = connection.Get("SMS_TaskSequencePackage")
Set objInParam = packageClass.Methods_("GetSequence"). _
inParameters.SpawnInstance_()
' Add the input parameters.
objInParam.Properties_.Item("TaskSequencePackage") = taskSequencePackage
' Get the sequence.
Set objOutParams = connection.ExecMethod("SMS_TaskSequencePackage", "GetSequence", objInParam)
Set ReadTaskSequence = objOutParams.TaskSequence
End Function
public IResultObject ReadTaskSequence(
WqlConnectionManager connection,
IResultObject taskSequencePackage)
{
IResultObject taskSequence = null;
try
{
Dictionary<string, object> parameters = new Dictionary<string, object>();
parameters.Add("TaskSequencePackage", taskSequencePackage);
IResultObject outParams = connection.ExecuteMethod("SMS_TaskSequencePackage", "GetSequence", parameters);
taskSequence = outParams.GetSingleItem("TaskSequence");
return taskSequence;
}
catch (Exception e)
{
Console.WriteLine("failed to hydrate: " + e.Message);
throw;
}
}
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
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 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
Visão geral da sequência de tarefas Como enumerar as sequências de tarefas de implantação do sistema operacional disponíveis