Acerca de las aplicaciones cliente de acción personalizada de Configuration Manager

La secuencia de tareas de Configuration Manager realiza operaciones de acción personalizadas durante la implementación del cliente. La aplicación puede ser un proceso, un script u otros comandos. Los requisitos para la aplicación se definen en un archivo de formato de objeto administrado (MOF). Entre los requisitos de ejemplo se incluyen el entorno operativo, los argumentos de línea de comandos, las propiedades y los códigos devueltos. Se agregan al entorno de secuencia de tareas cuando se procesa la acción.

Archivo MOF de acción personalizada

El archivo MOF de una acción personalizada es similar al siguiente ejemplo:

[   CommandLine("smsswd.exe /run:%1 abc.exe %2"),
    : (custom ui control and category qualifiers for action)
    ]
class MyCustomAction : SMS_TaskSequence_Action
{
    [TaskSequencePackage, CommandLineArg(1)]
    string          PackageIDForAbcExe;

    [CommandLineArg(2), AllowedLen("1-32000")]
    string          AbcCommandLineArgs;

    [SuccessCodes, Not_Null]
    string          AbcSuccessCodes = "0 3010";

    string         SomeOtherPropertyThatAbcNeeds;

    string          SupportedEnvironment = "WinPEandFullOS";
};

El archivo MOF describe la información necesaria para la entrada, el entorno, las propiedades y la información del paquete de implementación de la aplicación de acción personalizada.

Para obtener más información, vea About the Configuration Manager custom action MOF file.

Entrada de la aplicación

Las acciones personalizadas deben ejecutarse desatendidas, por lo que la aplicación no debe solicitar la entrada del usuario. Todas las entradas deben recibirse desde la línea de comandos, el entorno de secuencia de tareas o desde un archivo de datos.

La línea de comandos de la aplicación de acción se establece, en el archivo MOF, mediante la acción integrada Ejecutar línea de comandos.

Por ejemplo:

CommandLine("smsswd.exe /run:PackageID abc.exe [any abc.exe command line args]"

Procesamiento de aplicaciones

La aplicación de secuencia de tareas ejecuta las operaciones de acción personalizadas. Debe tener en cuenta su entorno operativo y tener acceso a las variables de entorno de secuenciación de tareas, al progreso de los informes y a los códigos de finalización devueltos.

Entorno

El archivo MOF debe especificar el entorno operativo con la SMS_TaskSequence_Action clase WMI del SupportedEnvironment servidor. Los entornos disponibles se Windows PE ( WinPE ), sistema operativo completo ( ), o ambos FullOS entornos ( WinPEandFullOS ).

La elección del entorno depende de las circunstancias. Por ejemplo, es probable que la configuración de instalación pre-operativa se haga en el entorno Windows PE. Para obtener más información, vea Infrastructure requirements for OS deployment. Las actualizaciones de los sistemas operativos instalados actualmente usarán el entorno completo del sistema operativo. Por ejemplo, instalación de software o controlador. Las tareas independientes del entorno del sistema operativo, como los reinicios o la creación de conexiones de red, se pueden realizar mediante la configuración de ambos entornos.

Procesamiento

Durante el procesamiento, se tiene acceso a las variables de secuencia de tareas definidas por el archivo MOF mediante el TSEnvironment objeto de automatización COM. Para obtener más información, vea How to Use Task Sequence Variables in a Running Configuration Manager Task Sequence.

Si la operación tarda mucho tiempo, puede informar del progreso en el entorno de secuencia de tareas y mostrar un indicador de progreso mediante la clase de automatización COM del cliente ProgressUI. Para obtener más información, vea About reporting Configuration Manager custom action progress.

Finalización

La aplicación debe establecer la SuccessCodes variable de entorno como un valor devuelto cuando se complete.

Return Descripción
0 Correcto
Distinto de cero Error

Si es necesario reiniciar una vez que finalice la aplicación, se debe establecer la SMSTSRebootRequested variable de entorno. Para obtener más información, vea Variables de secuencia de tareas. Para obtener información sobre cómo establecer variables de entorno, vea How to use task sequence variables in a running Configuration Manager task sequence.

Implementación

Para que Configuration Manager lo utilice, la aplicación de acción personalizada debe estar disponible desde un paquete de Configuration Manager. El administrador puede crear el paquete mediante la consola de Configuration Manager o mediante un lenguaje de programación. Para obtener más información, vea How to create a package.

El identificador del paquete debe estar disponible para que la implementación funcione. Normalmente, el archivo MOF declara una propiedad para contenerla, como en el ejemplo siguiente:

[TaskSequencePackage, CommandLineArg(1)]
string PackageIDForAbcExe;

Nota

El identificador del paquete es la SMS_Package clase WMI del PackageID servidor.

El identificador del paquete se obtiene del administrador, cuando se edita la acción personalizada en el editor de secuencias de tareas.

Para habilitar este comportamiento, el control de acción personalizado puede usar un control de edición de texto en su implementación para obtener el identificador del paquete del administrador. Para ver un ejemplo que usa un control de texto, vea How to create a Configuration Manager custom action control.

Cuando el administrador lo usa, el control de acción personalizado se edita como parte de una secuencia de tareas mediante el editor de secuencias de tareas. Cuando el editor de secuencia de tareas lo guarda, se crea SMS_TaskSequencePackage clase WMI de servidor para contener la secuencia de tareas, incluida la acción personalizada.

A continuación, el paquete de secuencia de tareas se anuncia a los clientes junto con el paquete de acciones personalizado al que hace referencia la acción personalizada. Para obtener más información, vea How to create an advertisement.

Cuando se ejecuta la acción personalizada en el cliente, el identificador del paquete de la acción personalizada se proporciona como un parámetro de línea de comandos, desde el que se extraen y ejecutan los archivos binarios de la acción personalizada.

El identificador del paquete se proporciona mediante el parámetro /run de línea de comandos para Smsswd.exe.

Configuración de partición previa a la red y partición previa

Si necesita configurar la conectividad de disco o red antes de tener una partición de disco y antes de tener conectividad de red, debe crear una aplicación para realizar estas tareas. La aplicación debe colocarse en una imagen de arranque personalizada mediante el Windows Assessment and Deployment Kit (ADK). Para obtener más información, vea Windows escenarios de ADK para profesionales de TI.

Nota

Agregar archivos al archivo de imagen de arranque puede aumentar los requisitos mínimos de RAM y, debido a las condiciones de memoria baja, puede provocar errores inesperados en las secuencias de tareas.

A continuación, importe la imagen en Configuration Manager como una imagen personalizada. Para obtener más información, vea Agregar una imagen de arranque.

La aplicación, los archivos compatibles y el SMSTS.INI personalizados deben colocarse en la Windows carpeta.

Para usar la aplicación, use la imagen de arranque personalizada en una secuencia de tareas que contiene un paso previo a la partición/red.

Vea también

Información de acciones personalizadas de Configuration Manager

Acerca del archivo MOF de acción personalizada de Configuration Manager