Cómo agregar una acción de secuencia de tareas de implementación del sistema operativo
Una acción de secuencia de tareas de implementación del sistema operativo se agrega a una secuencia de tareas, en Configuration Manager, mediante la creación de una instancia de una clase derivada de SMS_TaskSequence_Action y, a continuación, agregarla a los pasos de la secuencia de tareas.
Nota:
Configuration Manager tiene una serie de acciones integradas que puede usar. Por ejemplo, la clase de acción de línea de comandos es SMS_TaskSequence_RunCommandLineAction. Estas clases derivan de la clase SMS_TaskSequence_Action .
SMS_TaskSequenceAction deriva de la clase SMS_TaskSequence_Step , que es la clase base para acciones y grupos. La secuencia de tareas almacena sus pasos en una matriz de SMS_TaskSequence_Step, lo que permite almacenar acciones y grupos juntos.
Para agregar una acción de secuencia de tareas
Configure una conexión con el proveedor de SMS. Para obtener más información, consulte Aspectos básicos del proveedor de SMS.
Cree un objeto de secuencia de tareas (SMS_TaskSequence). Para obtener más información, vea How to Create an Operating System Deployment Task Sequence( Cómo crear una secuencia de tareas de implementación del sistema operativo).
Cree una instancia de clase derivada de SMS_TaskSequenceAction , por ejemplo, SMS_TaskSequence_RunCommandLineAction, para la acción que desee.
Rellene la acción según corresponda.
Agregue la acción a los pasos de secuencias de tareas. Se almacena la propiedad steps de clase SMS_TaskSequence).
Ejemplo
El siguiente método de ejemplo crea una acción de línea de comandos y la agrega a la secuencia de tareas proporcionada.
Para obtener información sobre cómo llamar al código de ejemplo, vea Llamar a fragmentos de código de Configuration Manager.
Sub AddTaskSequenceActionCommandLine(connection, taskSequence, name, description)
Dim steps
Dim action
Set action = connection.Get("SMS_TaskSequence_RunCommandLineAction").SpawnInstance_
action.CommandLine = "cmd /c Echo Hello"
action.Name=name
action.Description=description
action.Enabled=True
action.ContinueOnError=False
If IsNull(taskSequence.Steps) Then
steps = Array(action)
taskSequence.Steps=steps
Else
steps= Array(taskSequence.Steps)
ReDim steps (UBound (taskSequence.Steps)+1)
taskSequence.Steps(UBound(steps))=action
End if
End Sub
public IResultObject AddTaskSequenceActionCommandLine(
WqlConnectionManager connection,
IResultObject taskSequence,
string name,
string description)
{
try
{
// Create the new step.
IResultObject ro;
ro = connection.CreateEmbeddedObjectInstance("SMS_TaskSequence_RunCommandLineAction");
ro["CommandLine"].StringValue = @"cmd /c Echo Hello";
ro["Name"].StringValue = name;
ro["Description"].StringValue = description;
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);
return ro;
}
catch (SmsException e)
{
Console.WriteLine("Failed to add action: " + 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. |
taskSequence |
-Administrado: IResultObject - VBScript: SWbemObject |
Secuencia de tareas válida. |
Name |
-Administrado: String -Vbscript: String |
Nombre de la nueva acción. |
Description |
-Administrado: String -Vbscript: String |
Descripción de la acción. |
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, consulte 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
Introducción a los objetosCómo agregar una condición a un paso de secuencia de tareas de implementación del sistema operativo
Conexión a un proveedor de SMS en Configuration Manager mediante código administrado
Conexión a un proveedor de SMS en Configuration Manager mediante WMI
Cómo crear un grupo de secuencias de tareas de implementación del sistema operativo
Procedimiento para eliminar una acción de secuencia de tareas de implementación del sistema operativo
Introducción a la secuencia de tareas