Partager via


À propos de Configuration Manager applications clientes d’action personnalisée

La séquence de tâches dans Configuration Manager effectue des opérations d’action personnalisées pendant le déploiement du client. L’application peut être un processus, un script ou d’autres commandes. Les exigences de l’application sont définies dans un fichier MOF (Managed Object Format). Les exemples de configuration requise incluent l’environnement d’exploitation, les arguments de ligne de commande, les propriétés et les codes de retour. Elles sont ajoutées à l’environnement de séquence de tâches lorsque l’action est traitée.

Fichier MOF d’action personnalisée

Le fichier MOF pour une action personnalisée est similaire à l’exemple suivant :

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

Le fichier MOF décrit les informations nécessaires pour l’entrée de l’application d’action personnalisée, l’environnement, les propriétés et les informations de package de déploiement.

Pour plus d’informations, consultez À propos du fichier MOF d’action personnalisée Configuration Manager.

Entrée d’application

Les actions personnalisées doivent s’exécuter sans assistance, de sorte que l’application ne doit pas inviter l’utilisateur à entrer. Toutes les entrées doivent être reçues de la ligne de commande, de l’environnement de séquence de tâches ou d’un fichier de données.

La ligne de commande de l’application d’action est définie, dans le fichier MOF, à l’aide de l’action intégrée Exécuter la ligne de commande .

Par exemple :

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

Traitement de l’application

L’application de séquence de tâches exécute les opérations d’action personnalisées. Il doit connaître son environnement d’exploitation et avoir accès aux variables d’environnement de séquencement des tâches, à la progression des rapports et aux codes d’achèvement de retour.

Environnement

Le fichier MOF doit spécifier l’environnement d’exploitation avec la propriété classe SupportedEnvironmentWMI SMS_TaskSequence_Action Server. Les environnements disponibles sont Windows PE (WinPE), le système d’exploitation complet (FullOS) ou les deux environnements (WinPEandFullOS).

Le choix de l’environnement dépend des circonstances. Par exemple, la configuration de l’installation préalable à l’exploitation sera probablement effectuée dans l’environnement Windows PE. Pour plus d’informations, consultez Configuration requise pour le déploiement du système d’exploitation. Mises à jour aux systèmes d’exploitation actuellement installés utilisent l’environnement de système d’exploitation complet. Par exemple, l’installation d’un logiciel ou d’un pilote. Les tâches indépendantes de l’environnement de système d’exploitation, telles que les redémarrages ou la création de connexions réseau, peuvent être effectuées à l’aide des deux paramètres d’environnement.

Traitement

Pendant le traitement, vous accédez aux variables de séquence de tâches définies par le fichier MOF à l’aide de l’objet TSEnvironment Automation COM. Pour plus d’informations, consultez Guide pratique pour utiliser des variables de séquence de tâches dans une séquence de tâches Configuration Manager en cours d’exécution.

Si l’opération prend beaucoup de temps, vous pouvez signaler la progression à l’environnement de séquence de tâches et afficher un indicateur de progression à l’aide de la classe d’automatisation COM du client ProgressUI. Pour plus d’informations, consultez À propos de la création de rapports Configuration Manager la progression des actions personnalisées.

Achèvement

L’application doit définir la SuccessCodes variable d’environnement en tant que valeur de retour lorsqu’elle est terminée.

Return Description
0 Opération réussie
Non-zéro Échec

Si un redémarrage est nécessaire une fois l’application terminée, la variable d’environnement SMSTSRebootRequested doit être définie. Pour plus d’informations, consultez Variables de séquence de tâches. Pour plus d’informations sur la définition des variables d’environnement, consultez Guide pratique pour utiliser des variables de séquence de tâches dans une séquence de tâches Configuration Manager en cours d’exécution.

Déploiement

Pour être utilisée par Configuration Manager, l’application d’action personnalisée doit être disponible à partir d’un package Configuration Manager. L’administrateur peut créer le package à l’aide de la console Configuration Manager ou d’un langage de programmation. Pour plus d’informations, consultez Comment créer un package.

L’identificateur de package doit être disponible pour que le déploiement fonctionne. En règle générale, le fichier MOF déclare une propriété pour la contenir, comme dans l’exemple suivant :

[TaskSequencePackage, CommandLineArg(1)]
string PackageIDForAbcExe;

Remarque

L’identificateur de package est la propriété classe PackageIDWMI du serveur SMS_Package.

L’identificateur de package est obtenu auprès de l’administrateur lorsque l’action personnalisée est modifiée dans l’éditeur de séquence de tâches.

Pour activer ce comportement, votre contrôle d’action personnalisé peut utiliser un contrôle de modification de texte dans son implémentation pour obtenir l’identificateur du package auprès de l’administrateur. Pour obtenir un exemple qui utilise un contrôle de texte, consultez How to create a Configuration Manager custom action control.

Lorsqu’il est utilisé par l’administrateur, le contrôle d’action personnalisé est modifié dans le cadre d’une séquence de tâches à l’aide de l’éditeur de séquence de tâches. Lorsqu’il est enregistré par l’éditeur de séquence de tâches, une classe WMI du serveur SMS_TaskSequencePackage est créée pour contenir la séquence de tâches, y compris l’action personnalisée.

Le package de séquence de tâches est ensuite publié sur les clients avec le package d’actions personnalisées référencé par l’action personnalisée. Pour plus d’informations, consultez Comment créer une publication.

Lorsque l’action personnalisée est exécutée sur le client, l’identificateur de package de l’action personnalisée est fourni en tant que paramètre de ligne de commande, à partir duquel les fichiers binaires de l’action personnalisée sont extraits et exécutés.

L’identificateur de package est fourni à l’aide du /run paramètre de ligne de commande pour Smsswd.exe.

Configuration de pré-partition et de pré-partition réseau

Si vous devez configurer la connectivité de disque ou réseau avant d’avoir une partition de disque et avant d’avoir une connectivité réseau, vous devez créer une application pour effectuer ces tâches. Votre application doit être placée dans une image de démarrage personnalisée à l’aide du Kit de déploiement et d’évaluation Windows (ADK). Pour plus d’informations, consultez Scénarios Windows ADK pour les professionnels de l’informatique.

Remarque

L’ajout de fichiers au fichier image de démarrage peut augmenter la quantité minimale de RAM requise et peut, en raison de conditions de mémoire insuffisante, entraîner l’échec inattendu des séquences de tâches.

Ensuite, importez l’image dans Configuration Manager en tant qu’image personnalisée. Pour plus d’informations, consultez Ajouter une image de démarrage.

L’application, les fichiers de prise en charge et le SMSTS.INI personnalisé doivent être placés dans le dossier Windows.

Pour utiliser l’application, utilisez l’image de démarrage personnalisée dans une séquence de tâches qui contient une étape de pré-partition/réseau.

Voir aussi

À propos de Gestionnaire de configuration actions personnalisées

À propos du fichier MOF d’action personnalisée Configuration Manager