Compartir a través de


Cómo crear una secuencia de tareas de implementación del sistema operativo

Cree una secuencia de tareas de implementación del sistema operativo Configuration Manager mediante la creación de una instancia de la clase SMS_TaskSequence.

Una secuencia de tareas contiene uno o varios pasos que se ejecutan secuencialmente en el equipo cliente. Para obtener más información, vea Modelo de objetos de secuencia de tareas de implementación del sistema operativo.

A continuación, la secuencia de tareas se empaqueta en un SMS_TaskSequencePackage y se anuncia en el equipo cliente.

Para crear una secuencia de tareas

  1. Configure una conexión con el proveedor de SMS. Para obtener más información, consulte Aspectos básicos del proveedor de SMS.

  2. Cree un objeto de secuencia SMS_TaskSequence de tareas.

  3. Agregue acciones y, según sea necesario, agregue grupos a la acción. Para obtener más información, vea Cómo agregar una acción de secuencia de tareas de implementación del sistema operativo.

  4. Asocie la secuencia de tareas a un paquete de secuencia de tareas. Para obtener más información, vea How to Create an Operating System Deployment Task Sequence Package( Cómo crear un paquete de secuencia de tareas de implementación del sistema operativo).

  5. Anuncie la secuencia de tareas en el equipo cliente. Para obtener más información, vea Cómo crear un anuncio.

Ejemplo

El siguiente método de ejemplo crea una secuencia de tareas que instala un programa de software. En el ejemplo también se crea un paquete de secuencia de tareas llamando al ejemplo definido en How to Create an Operating System Deployment Task Sequence Package (Cómo crear un paquete de secuencia de tareas de implementación del sistema operativo).

Para obtener información sobre cómo llamar al código de ejemplo, vea Llamar a fragmentos de código de 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;
    }
}

El método de ejemplo tiene los parámetros siguientes:

Parámetro Tipo Descripción
Connection -Administrado: WqlConnectionManager
- VBScript: SWbemServices
Una conexión válida al proveedor de SMS.
name -Administrado: String
- VBScript: String
Nombre del paso de secuencia de tareas.
description - VBScript: String Descripción del paso de secuencia de tareas.
packageID -Administrado: String
- VBScript: String
Identificador del paquete que contiene el software que se va a instalar. Obtenido de SMS_Package.PackageID.
programName -Administrado: String
- VBScript: String
Nombre del programa que se va a instalar. Obtenido de SMS_Program.ProgramName.

Compilar el código

Este ejemplo de C# requiere:

Espacios de nombres

System

System.Collections.Generic

System.Text

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

Ensamblado

microsoft.configurationmanagement.managementprovider

adminui.wqlqueryengine

Programación sólida

Para obtener más información sobre el control de errores, vea Acerca de los errores de Configuration Manager.

Seguridad de .NET Framework

Para obtener más información sobre la protección de aplicaciones Configuration Manager, consulte Configuration Manager administración basada en roles.

Consulta también

Información general sobre los objetosHow to Connect to an SMS Provider in Configuration Manager by Using Managed CodeHow to Connect to an SMS Provider in Configuration Manager by Using WMITask sequence overviewHow to Create an Operating System Deployment Task Sequence Package