Come creare una sequenza di attività di distribuzione del sistema operativo

È possibile creare una sequenza di attività di distribuzione del sistema operativo Configuration Manager creando un'istanza della classe SMS_TaskSequence.

Una sequenza di attività contiene uno o più passaggi che vengono eseguiti in sequenza nel computer client. Per altre informazioni, vedere Modello a oggetti per sequenza di attività di distribuzione del sistema operativo.

La sequenza di attività viene quindi impacchettata in un SMS_TaskSequencePackage e annunciata al computer client.

Per creare una sequenza di attività

  1. Configurare una connessione al provider SMS. Per altre informazioni, vedere Nozioni fondamentali sul provider SMS.

  2. Creare un oggetto sequenza di SMS_TaskSequence attività.

  3. Aggiungere azioni e, se necessario, aggiungere gruppi all'azione. Per altre informazioni, vedere Come aggiungere un'azione della sequenza di attività di distribuzione del sistema operativo.

  4. Associare la sequenza di attività a un pacchetto di sequenza di attività. Per altre informazioni, vedere Come creare un pacchetto della sequenza di attività di distribuzione del sistema operativo.

  5. Annunciare la sequenza di attività al computer client. Per ulteriori informazioni, vedere Come creare un annuncio pubblicitario.

Esempio

Il metodo di esempio seguente crea una sequenza di attività che installa un programma software. Nell'esempio viene creato anche un pacchetto della sequenza di attività facendo riferimento all'esempio definito in Come creare un pacchetto della sequenza di attività di distribuzione del sistema operativo.

Per informazioni sulla chiamata del codice di esempio, vedere Chiamata di frammenti di codice di Configuration Manager.

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;
    }
}

Il metodo di esempio include i parametri seguenti:

Parametro Tipo Descrizione
Connection - Gestito: WqlConnectionManager
- VBScript: SWbemServices
Una connessione valida al provider SMS.
name - Gestito: String
- VBScript: String
Nome del passaggio della sequenza di attività.
description - VBScript: String Descrizione del passaggio della sequenza di attività.
packageID - Gestito: String
- VBScript: String
Identificatore del pacchetto contenente il software da installare. Ottenuto da SMS_Package.PackageID.
programName - Gestito: String
- VBScript: String
Nome del programma da installare. Ottenuto da SMS_Program.ProgramName.

Compilazione del codice

Questo esempio di C# richiede:

Spazi dei nomi

Sistema

System.Collections.Generic

System.Text

Microsoft.ConfigurationManagementManagementProvider

Microsoft.ConfigurationManagementManagementProvider.WqlQueryEngine

Assembly

Microsoft.ConfigurationManagement.ManagementProvider

adminui.wqlqueryengine

Programmazione efficiente

Per altre informazioni sulla gestione degli errori, vedere Informazioni sugli errori di Configuration Manager.

Sicurezza di .NET Framework

Per altre informazioni sulla protezione delle applicazioni di Configuration Manager, vedere Amministrazione basata sui ruoli di Configuration Manager.

Vedere anche

Panoramica degli oggettiCome connettersi a un provider SMS in Configuration Manager tramite codice gestitoCome connettersi a un provider SMS in Configuration Manager tramite WMIPanoramica della sequenza di attivitàCome creare un pacchetto della sequenza di attività di distribuzione del sistema operativo