Partager via


Procédure pas - à - pas : créer une catégorie de paramètres

Dans cette procédure pas - à - pas, vous pouvez créer une catégorie de paramètres de Visual Studio et l'utiliser pour enregistrer des valeurs à et pour restaurer des valeurs à partir d'un fichier de paramètres. Une catégorie est un groupe de propriétés connexes qui s'affichent en tant que « point de paramètres personnalisés » ; autrement dit, comme case à cocher dans l'Assistant paramètres d'importation et d'exportation. Pour démarrer l'Assistant, dans le menu d' Outils , cliquez sur Paramètres d'importation et d'exportation. Les paramètres sont stockés ou restaurés comme une catégorie, et différents paramètres ne s'affichent pas dans l'Assistant. Pour plus d'informations, consultez Paramètres Visual Studio.

Managed package (MPF) prend en charge la création des catégories de paramètres avec du code supplémentaire très petit. vous créez un VSPackage pour fournir un conteneur pour la catégorie par sous-classement la classe d' Package . Vous créez la catégorie elle-même en le dérivant de la classe d' DialogPage .

Notes

Bien qu' DialogPage puisse fournir une interface utilisateur de la grille de propriétés ou (UI) personnalisés, ni l'un ni l'autre n'est utilisé par le gestionnaire des paramètres.

Pour commencer cette procédure, vous devez d'abord remplir la première section de Procédure pas - à - pas : créer une page d'options. La grille des propriétés résultant d'options vous permet d'examiner et modifier les propriétés dans la catégorie. Une fois que vous avez enregistré la catégorie de propriété dans un fichier de paramètres, vous examinez le fichier pour voir comment les valeurs de propriété sont stockées.

Composants requis

Pour exécuter cette procédure, vous devez installer Kit de développement logiciel Visual Studio 2010.

Notes

Pour plus d'informations sur le kit de développement Visual Studio, consultez Étendre la présentation de Visual Studio.Pour savoir comment télécharger le kit de développement Visual Studio, consultez Visual Studio Extensibility Developer Center sur le site Web MSDN.

Emplacements du modèle de projet de package Visual Studio

Le modèle de projet de package Visual Studio se trouve dans trois emplacements différents dans la boîte de dialogue Nouveau projet :

  1. Sous l'extensibilité Visual Basic. Le langage par défaut du projet est en Visual Basic.

  2. Sous l'extensibilité c#. Le langage par défaut du projet est c#.

  3. Sous d'autres projets contenus l'extensibilité. Le langage par défaut du projet est en C++.

créer une catégorie de paramètres

Dans cette section, vous créez une catégorie de paramètres à l'aide de le modèle de projet de package de Visual Studio. Vous utilisez un point de paramètres personnalisés pour enregistrer et restaurer les valeurs des paramètres.

pour créer une catégorie de paramètres

  1. Exécutez la première section de Procédure pas - à - pas : créer une page d'options.

  2. Cliquez avec le bouton droit sur le nœud du projet de MyToolsOptions puis cliquez sur Définir comme projet de démarrage.

  3. ouvrez le fichier de VSPackage.resx et ajoutez ces trois ressources de type chaîne :

    Nom

    Valeur

    106

    ma catégorie

    107

    mes paramètres

    108

    OptionInteger et OptionFloat

    Cela crée des ressources qui nomment la catégorie « ma catégorie », l'objet mes paramètres », et la description « OptionInteger et OptionFloat » category.

    Notes

    De ces trois, seul le nom de catégorie n'apparaît pas dans l'Assistant paramètres d'importation et d'exportation.

  4. Ouvrez le fichier MyToolsOptionsPackage.cs ou MyToolsOptionsPackage.vb dans le projet de MyToolsOptions et ajoutez une propriété d' float nommée OptionFloat à la classe d' OptionPageGrid , comme indiqué dans l'exemple suivant.

    Public Class OptionPageGrid
        Inherits DialogPage
        Private _optionInt As Integer = 256
        Private _optionFloat As Single = 3.14F
    
        <Category("My Options")>
        <Description("My integer option")>
        Public Property OptionInteger() As Integer 
            Get 
                Return _optionInt
            End Get 
            Set(ByVal value As Integer)
                _optionInt = value
            End Set 
        End Property
        <Category("My Options")>
        <Description("My float option")>
        Public Property OptionFloat() As Single 
            Get 
                Return _optionFloat
            End Get 
            Set(ByVal value As Single)
                _optionFloat = value
            End Set 
        End Property 
    End Class
    
    public class OptionPageGrid : DialogPage
    {
        private int _optionInt = 256;
        private float _optionFloat = 3.14F;
    
        [Category("My Options")]
        [Description("My integer option")]
        public int OptionInteger
        {
            get { return _optionInt; }
            set { _optionInt = value; }
        }
        [Category("My Options")]
        [Description("My float option")]
        public float OptionFloat
        {
            get { return _optionFloat; }
            set { _optionFloat = value; }
        }
    }
    

    Notes

    La catégorie d' OptionPageGrid nommée « ma catégorie » inclut désormais les deux propriétés, OptionInteger et OptionFloat.

  5. Ajoutez ProvideProfileAttribute à la classe d' MyToolsOptions et donnez -lui le CategoryName « ma catégorie », donnez -lui l'ObjectName mes paramètres », et l'ensemble IsToolsOptionPage à true. définit le categoryResourceID, l'objectNameResourceID, et le DescriptionResourceID des ID correspondants de ressources de type chaîne créés précédemment.

    <ProvideProfileAttribute(GetType(OptionPageGrid), "My Category", "My Settings", 106, 107, True, DescriptionResourceID:=108)>
    <Guid(GuidList.guidMyToolsOptionsPkgString)>
    Public NotInheritable Class MyToolsOptions
        Inherits Package
    
    [ProvideProfileAttribute(
       typeof(OptionPageGrid), "My Category", "My Settings",
       106, 107, true, DescriptionResourceID = 108)]
    [Guid(GuidList.guidMyToolsOptionsPkgString)]
    public sealed class MyToolsOptions : Package
    
  6. Générez le projet et vérifiez qu'il compile sans erreurs.

examen de la base de registres

Dans cette section, vous examinez les entrées de base de registres effectuées par ProvideProfileAttribute.

pour examiner la base de registres

  1. Commencez le projet en mode débogage en appuyant sur F5.

    Cette action démarre Visual Studio Exp et écrit les arguments d' ProvideProfileAttribute à la base de registres.

    Notes

    deux versions de Visual Studio sont ouvertes maintenant.

  2. Fermez l'instance de débogage de Visual Studio.

  3. exécutez l'Éditeur du Registre et examinez l'entrée du Registre pour HKCU \Software\Microsoft\VisualStudio\10.0Exp_Config\UserSettings\MyCategory_MySettings. Le tableau suivant montre les sous-clés de l'entrée (votre GUID est différent).

    Nom

    Données

    (Valeur par défaut)

    #107

    Catégorie

    {} ba1e23e3-fecc-425d-8259-06c40cfac1b6

    Description

    #108

    Package

    {} a2192704-7d66-44b7-b61b-44ed96aace98

    La valeur par défaut « #107 » de sous-clé fait référence à la ressource de type chaîne « mes paramètres ». La valeur « #108 » de sous-clés de description fait référence à la ressource de type chaîne « OptionInteger et OptionFloat ».

corriger la base de registres

Dans cette section, vous corrigez les entrées de base de registres effectuées par ProvideProfileAttribute.

ProvideProfileAttribute est conçu pour écrire des identificateurs de ressource pour les ressources non managées à la base de registres. Le chargeur de ressource de Visual Studio s'attend à ce que les identificateurs non managés de ressources possèdent des valeurs numériques précédées par « # », et les ressources managées doivent avoir des valeurs numériques sans précéder « # ». Par conséquent, vous devez supprimer « # » pour les identificateurs de ressource managée.

pour corriger la base de registres

  1. Corrigez l'entrée du Registre de HKLM \Software\Microsoft\VisualStudio\8.0Exp\UserSettings\MyCategory_MySettings en supprimant « # » de ses sous-clés numériques. Le tableau suivant montre les sous-clés de l'entrée (votre GUID est différent).

    Nom

    Données

    (Valeur par défaut)

    107

    Catégorie

    {} ba1e23e3-fecc-425d-8259-06c40cfac1b6

    Description

    108

    Package

    {} a2192704-7d66-44b7-b61b-44ed96aace98

    ToolsOptionsPath

    ma catégorie

  2. Cliquez avec le bouton droit sur l'entrée du Registre et exportez-la au fichier « settings.reg » dans le dossier du projet de MyToolsOptions.

  3. Fermez l'Éditeur du Registre.

  4. Cliquez avec le bouton droit sur le nœud du projet de MyToolsOptions et ajoutez « settings.reg » au projet.

  5. Ouvrez VsPkg.cs ou VsPkg.vb et supprimez ProvideProfileAttribute et ses arguments.

    '<ProvideProfileAttribute(GetType(OptionPageGrid), "My Category", "My Settings", 106, 107, True, DescriptionResourceID := 108)>
    
    //[ProvideProfileAttribute( 
    //   typeof(OptionPageGrid), "My Category", "My Settings", 
    //   106, 107, true, DescriptionResourceID = 108)]
    

    Cela empêché les entrées du Registre incorrectes d'être réécrit à la base de registres.

  6. Cliquez avec le bouton droit sur le projet de MyToolsOptions puis cliquez sur Propriétés.

    cliquez sur l'onglet d' Événements de build et ajoutez Ligne de commande de l'événement post-buildsuivant. Vous devez inclure le chemin d'accès complet du fichier de settings.reg (votre chemin d'accès peut différer).

    regedit /s D:\MyToolsOptions\MyToolsOptions\settings.reg
    
  7. Générez la solution de MyToolsOptions. Les sous-clés numériques corrigées sont écrites dans le Registre.

    Notes

    Vous devez également effectuer les corrections lorsque vous créez un fichier du registre pour le déploiement final d'un VSPackage.

examen du fichier de paramètres

Dans cette section, vous exportez des valeurs de catégorie de propriété à un fichier de paramètres. Vous examinez le fichier puis importez des valeurs dans la catégorie de propriété.

pour examiner le fichier de paramètres

  1. Commencez le projet en mode débogage en appuyant sur F5. Cette action démarre Visual Studio Exp.

    Notes

    deux versions de Visual Studio sont ouvertes maintenant.

  2. Dans Visual Studio Exp, dans le menu d' Outils , cliquez surOptions.

    La boîte de dialogue Options s'ouvre.

  3. Dans l'arborescence dans le volet gauche, développez ma catégorie puis cliquez sur Ma grille.

    La grille options s'affiche dans le volet droit. La catégorie de propriété est mes options, et les noms de propriété sont OptionFloat et OptionInteger.

  4. modifiez la valeur d' OptionFloat à 3,1416 et d' OptionInteger à 12. Cliquez sur OK.

  5. Dans le menu Outils, cliquez sur Importation et exportation de paramètres.

    L'Assistant d' Importation et exportation de paramètres s'affiche.

  6. Assurez -vous que L'exportation a sélectionné les paramètres d'environnement est sélectionné, puis cliquez sur Suivant.

    La page de Choisissez des paramètres pour exporter s'affiche.

  7. Cliquez sur mes paramètres.

    les modifications de Description à OptionInteger et OptionFloat.

  8. Assurez -vous que mes paramètres est sélectionné, puis cliquez sur Suivant.

    La page de Nommez le fichier de paramètres s'affiche.

  9. Nommez le nouveau fichier de paramètres MySettings.vssettings et enregistrez -le dans un répertoire approprié. Cliquez sur Terminer.

    La page d' exportation terminée signale que vos paramètres ont été correctement exportés.

  10. Dans le menu Fichier, pointez sur Ouvrir, puis cliquez sur Fichier. Recherchez MySettings.vssettings et ouvrez -le.

    Vous pouvez rechercher la catégorie de propriété que vous avez exporté dans la section suivante du fichier (votre GUID est différent).

    <Category name="My Category_My Settings" 
          Category="{4802bc3e-3d9d-4591-8201-23d1a05216a6}" 
          Package="{6bb6942e-014c-489e-a612-a935680f703d}" 
          RegisteredName="My Category_My Settings">
          PackageName="Company.MyToolsOptions.MyToolsOptions,          MyToolsOptions, Version=1.0.2251.20398, Culture=neutral,          PublicKeyToken=d74639816260e962">
       <PropertyValue name="OptionFloat">3.1416</PropertyValue> 
       <PropertyValue name="OptionInteger">12</PropertyValue> 
    </Category>
    

    Notez que le nom complet de la catégorie est formé par l'ajout d'un trait de soulignement le nom de catégorie suivi du nom de l'objet. OptionFloat et OptionInteger s'affichent dans la catégorie, ainsi que leurs valeurs exportées.

  11. fermez le fichier de paramètres sans le modifier.

  12. Dans le menu d' Outils , cliquez sur Options, développez ma catégorie, cliquez sur Ma grille puis modifiez les valeurs d' OptionFloat et d' OptionInteger. Cliquez sur OK.

  13. Dans le menu d' Outils , cliquez sur Importation et exportation de paramètres, sélectionnez Importer les paramètres d'environnement sélectionnés, puis cliquez sur Suivant.

    La page d' Enregistrer les paramètres actuels s'affiche.

  14. Sélectionnez Non, importent simplement de nouveaux paramètres puis cliquez sur Suivant.

    La page de choisissez une collection de paramètres pour importer s'affiche.

  15. Sélectionnez le fichier de MySettings.vssettings dans le nœud de mes paramètres de l'arborescence. Si le fichier ne figure pas dans l'arborescence, cliquez sur Parcourir et -le. Cliquez sur Suivant.

    La boîte de dialogue de Choisir les paramètres à importer s'affiche.

  16. Assurez -vous que mes paramètres est sélectionné, puis cliquez sur Terminer. Lorsque la page d' Importez complet apparaît, cliquez sur Fermer.

  17. Dans le menu d' Outils , cliquez sur Options, développez ma catégorie, cliquez sur mon Grille et vérifiez que les valeurs de catégorie de propriétés ont été restaurées.

Voir aussi

Concepts

Prise en charge pour les catégories de paramètres

Autres ressources

État d'un VSPackage