Partage via


Guide pratique pour créer un contrôle d’action personnalisée Configuration Manager

Dans Configuration Manager, pour créer un contrôle d’action personnalisé, vous créez un contrôle Windows à l’aide des deux classes suivantes :

Classe Description
SmsOsdEditorPageControl Contrôle d’action personnalisé. Vous dérivez de cette classe pour implémenter le contrôle d’action personnalisée affiché dans l’Éditeur de séquence de tâches.
TaskSequenceOptionControl Contrôle d’options pour l’action personnalisée. Vous dérivez de cette classe pour créer la page d’options d’action personnalisée qui s’affiche dans l’Éditeur de séquence de tâches.

Ces procédures vous montrent comment créer un assembly de contrôle de déploiement de système d’exploitation Configuration Manager à l’aide de Visual Studio 2005. Lorsqu’il est chargé dans l’Éditeur de séquence de tâches, le contrôle affiche une page de propriétés qui contient une zone de texte utilisée pour définir une variable d’action de nom d’utilisateur pour l’action personnalisée.

Après avoir effectué ces étapes, effectuez les étapes décrites dans les rubriques suivantes pour créer le fichier MOF (Action Managed Object Format) personnalisé et utiliser le contrôle d’action personnalisée.

Comment créer un fichier MOF pour une action personnalisée Configuration Manager

Guide pratique pour utiliser une action personnalisée Configuration Manager

Remarque

Pour plus d’informations sur l’utilisation de l’action personnalisée dans le cadre d’un déploiement, consultez À propos de Configuration Manager applications clientes d’action personnalisée

Le projet Control Visual Studio

La procédure suivante crée le projet de contrôle d’action personnalisée.

Créer le contrôle

  1. Dans Visual Studio 2010, dans le menu Fichier , pointez sur Nouveau, puis cliquez sur Projet pour ouvrir la boîte de dialogue Nouveau projet .

  2. Dans la liste des projets Visual C#, Windows , sélectionnez le modèle de projet Bibliothèque de contrôles Windows , puis tapez ConfigMgrTSAction dans la zone Nom .

  3. Cliquez sur OK pour créer le projet Visual Studio.

  4. Dans Explorateur de solutions, cliquez avec le bouton droit sur UserControl1.cs, cliquez sur Renommer, puis remplacez le nom par ConfigMgrTSActionControl.cs.

  5. Dans l’Explorateur de solutions, cliquez avec le bouton droit sur Références, puis cliquez sur Ajouter une référence.

  6. Dans la boîte de dialogue Ajouter une référence, cliquez sur l’onglet Parcourir, accédez à %ProgramFiles%\Microsoft Configuration Manager\AdminUI\bin, puis sélectionnez les assemblys suivants :

    • Adminui.osdcommon.dll

    • Adminui.tasksequenceeditor.dll

    • Adminui.wqlqueryengine.dll

    • Microsoft.configurationmanagement.exe

    • Microsoft.configurationmanagement.managementprovider.dll

  7. Cliquez sur OK pour ajouter les assemblys en tant que références de projet.

  8. Dans Explorateur de solutions, cliquez avec le bouton droit sur ConfigMgrTSActionControl.cs, puis cliquez sur Afficher le code.

  9. Ajoutez le code suivant pour inclure les espaces de noms requis :

    using Microsoft.ConfigurationManagement.AdminConsole;  
    using Microsoft.ConfigurationManagement.AdminConsole.TaskSequenceEditor;  
    
  10. Modifiez la classe ConfigMgrTSActionControl afin qu’elle dérive de SmsOsdEditorPageControl.

  11. Dans ConfigMgrTSActionControl.cs, ajoutez le nouveau constructeur suivant à la classe ConfigMgrTSActionControl :

    public ConfigMgrTSActionControl(SmsPageData data) : base(data)   
    {   
        InitializeComponent();   
    }  
    
  12. Ajoutez la méthode suivante pour initialiser le contrôle :

    public override void InitializePageControl()  
    {  
       base.InitializePageControl();  
    }  
    

Créer un contrôle Options

La procédure suivante crée le code qui déclare le contrôle d’options pour l’action personnalisée. Cette implémentation utilise le contrôle d’options par défaut.

Pour créer un contrôle d’options

  • À la fin de ConfigMgrTSActionControl.cs , ajoutez la nouvelle classe suivante dans l’espace de noms ConfigMgrTSAction :

    public class ConfigureTSActionOptions : TaskSequenceOptionControl  
    {  
        public ConfigureTSActionOptions() : base()   
        {  
        }  
        public ConfigureTSActionOptions(SmsPageData data) : base(data)   
        {  
        }  
    }  
    
    

Personnaliser l’interface utilisateur

La procédure suivante ajoute une zone de texte et du code pour gérer les données d’action.

Pour ajouter l’interface utilisateur

  1. Dans Explorateur de solutions, cliquez avec le bouton droit sur ConfigMgrTSActionControl.cs, puis cliquez sur Concepteur de vues.

  2. Dans la Boîte à outils, cliquez sur l’onglet Contrôles communs , puis double-cliquez sur TextBox. Un bouton nommé textBox1 est ajouté à votre contrôle sur le Concepteur de contrôles utilisateur.

  3. Double-cliquez sur la zone de texte. Un gestionnaire d’événements nommé textBox1_TextChanged est ajouté à la classe ConfigMgrTSActionControl. Ajoutez le code suivant pour vous assurer que les modifications sont enregistrées dans le gestionnaire de propriétés de l’action :

    SetDirtyFlag(true);  
    
  4. Dans la classe ConfigMgrTSActionControl, ajoutez la méthode suivante pour écrire la valeur de zone de texte dans la User propriété définie dans l’action personnalisée MOF. Cela s’appelle lorsque l’utilisateur clique sur le bouton OK ou Appliquer .

    protected override bool ApplyChanges(out Control errorControl, out bool showError)  
    {  
        // You can check the error here and return false.  
        if (this.HasError(out errorControl) == true)  
        {  
            this.ShowMessageBox(  
                this.GetErrorString(),  
                "Error",  
                MessageBoxButtons.OK,  
                MessageBoxIcon.Warning);  
            errorControl = null;  
            showError = true;  
            return false;  
        }  
        this.PropertyManager["User"].StringValue = textBox1.Text;  
    
        return base.ApplyChanges(out errorControl, out showError);  
    }  
    
  5. Dans le mode Création du contrôle, double-cliquez sur le contrôle pour créer la méthode ConfigMgrTSActionControl_Load.

  6. Ajoutez le code suivant à la méthode . Ce code charge la zone de texte avec une valeur Utilisateur existante. Cela se produit lorsque l’action de séquence de tâches est modifiée après sa création.

    textBox1.Text = this.PropertyManager["User"].StringValue;  
    

Chaînes de ressources

La procédure suivante ajoute les chaînes de ressources utilisées pour afficher le nom de l’action personnalisée dans l’Éditeur de séquence de tâches.

Pour ajouter des chaînes de ressources

  1. Dans Explorateur de solutions, dans le menu Projet, cliquez sur Propriétés.

  2. Cliquez sur l’onglet Ressources . Si le fichier de ressources n’existe pas, créez-le en sélectionnant le message qui s’affiche sous l’onglet Ressources .

  3. Dans la barre d’outils du Concepteur de ressources, pointez sur la liste déroulante de l’affichage des ressources, cliquez sur la flèche et vérifiez qu’elle est définie sur Chaînes (valeur par défaut). Une grille de paramètres s’affiche, affichant les chaînes gérées par cette instance du Concepteur de ressources.

  4. Cliquez sur la colonne Nom de la dernière ligne de la grille, marquée d’un astérisque (*).

  5. Dans la colonne Nom , entrez DefaultDisplay_ConfigMgrTSAction comme nom de chaîne.

  6. Dans la colonne Valeur , entrez la chaîne Action personnalisée. Il s’agit de la chaîne affichée dans la liste des actions de séquence de tâches.

  7. Cliquez sur la colonne Nom de la dernière ligne de la grille, marquée d’un astérisque (*).

  8. Dans la colonne Nom , entrez ConfigMgrTSAction comme nom de chaîne.

  9. Dans la colonne Valeur , entrez Custom Action. Il s’agit de la chaîne qui s’affiche lorsque vous ajoutez l’action personnalisée.

Déployer l’assembly

Cette procédure génère et copie l’assembly que vous avez créé dans le dossier assemblys Configuration Manager console. Pour plus d’informations sur le déploiement d’extensions de console Configuration Manager, consultez À propos de Configuration Manager déploiement d’extensions de console Administrateur.

Pour déployer l’assembly

  1. Créez le projet. Visual Studio crée l’assembly en tant que \Visual Studio 2005\Projects\ConfigMgrControl\ConfigMgrTSAction\bin\Debug\ConfigMgrTSActionControl.dll.

  2. Copiez l’assembly dans le dossier %ProgramFiles%\Microsoft Configuration Manager\AdminUI\bin.

Voir aussi

À propos de l’extension de console Configuration Manager
Déploiement de l’extension de console Configuration Manager
Comment créer un fichier MOF pour une action personnalisée Configuration Manager
Guide pratique pour utiliser une action personnalisée Configuration Manager