Ajout d'Assistants aux boîtes de dialogue Ajouter un élément et Nouveau projet à l'aide de fichiers .Vsdir

Les compléments Visual Studio sont déconseillés dans Visual Studio 2013. Vous devriez mettre vos compléments à niveau vers des extensions VSPackage. Pour plus d'informations sur les mises à jour, consultez FAQ : conversion de compléments en extensions VSPackage.

Un fichier VSDir est un fichier texte avec une extension .vsdir, que vous créez pour fournir des informations sur l'affichage de ses éléments dans les boîtes de dialogue Ajouter un élément et Nouveau projet. Les informations incluent les noms des éléments, l'ordre dans lequel ils se présentent et l'icône qui les accompagne. Vous pouvez modifier un de ces éléments. Les fichiers VSDir sont utilisés pour ajouter de nouveaux modèles ou Assistants aux boîtes de dialogue Ajouter un élément et Nouveau projet.

Il n'y a pas de fichier VSDir par défaut. Si un fichier VSDir est présent, Visual Studio le lit et ajoute son contenu aux boîtes de dialogue. En l'absence de fichier VSDir, les modèles et Assistants par défaut s'affichent. Un même répertoire peut contenir plusieurs fichiers VSDir ; l'intégralité de leur contenu est alors ajouté aux boîtes de dialogue. En général, un seul fichier VSDir contient des enregistrements pour plusieurs Assistants, dossiers et modèles. Chaque enregistrement présent dans le fichier est délimité par un caractère de saut de ligne. Les caractères de trait vertical ( | ) séparent les champs dans chaque enregistrement. Tout champ facultatif pour lequel il n'existe pas de données significatives contient un zéro (0) ou un espace en tant qu'espace réservé. Les chaînes entrées dans des champs ne requièrent pas de figurer entre guillemets.

Composants d'un fichier VSDir

Voici des exemples de fichiers VSDir. Le premier référence un Assistant unique, créé dans la rubrique Procédure pas à pas : création d'un Assistant:

MyNewWizard.vsz| |A New Wizard|1|My New Wizard|C:\Addins\MyNewWizard\MyNewWizard\bin\Debug| | |MyNewWizard99

L'exemple de fichier VSDir suivant référence un certain nombre de fichiers d'Assistant .vsz, ainsi que d'autres informations pertinentes concernant chaque Assistant (comme souligné ultérieurement dans cette rubrique). Ces fichiers diffèrent du fichier VSDir précédent en ce qu'ils référencent des chaînes en tant que numéros d'identification de ressources et non en tant que chaînes littérales. De plus, ils utilisent des GUID pour référencer des DLL.

..\..\Projects\csharp building blocks\BusinessFacade.vsz|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|#5015|10|#5022|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|127|0|Project
..\..\Projects\csharp building blocks\BusinessRules.vsz|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|#5016|20|#5023|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|128|0|Project
..\..\Projects\csharp building blocks\DataAccess.vsz|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|#5017|30|#5024|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|129|0|Project
..\..\Projects\csharp building blocks\SystemFrameworks.vsz|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|#5018|40|#5025|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|130|0|Project
..\..\Projects\csharp building blocks\WebService.vsz|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|#5019|50|#5026|{FAE04EC1-301F-11d3-BF4B-00C04F79EFBC}|4547|1|WebService|Web
..\..\Projects\csharp building blocks\WebUI.vsz|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|#5020|60|#5027|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|131|1|WebUI|web
..\..\Projects\csharp building blocks\WinUI.vsz|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|#5021|70|#5028|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|132|0|Project

Les champs suivants peuvent être spécifiés pour chaque enregistrement d'un fichier VSDir :

Champ

Signification

RelPathName

Requis. Nom du fichier .vsz de l'Assistant, tel que MyWizard.vsz, relatif au répertoire d'installation de Visual Studio.

{clsidPackage}

Optionnel. GUID représentant un produit (par exemple, Visual C++) qui utilise une DLL contenant des ressources localisées. En règle générale, ce champ est vide pour les fichiers VSDir qui correspondent aux Assistants tiers.

LocalizedName

Optionnel. Il s'agit du nom localisé de l'Assistant ou du modèle, et du nom qui s'affiche dans la boîte de dialogue Ajouter un élément. Il peut s'agir d'une chaîne ou d'un identificateur de ressource sous la forme #ResID.

SortPriority

Requis. Entier représentant l'ordre de tri et la priorité relative de l'Assistant, la valeur 1 étant la plus élevée. Par exemple, si cet élément a la valeur « 1 », il s'affichera à côté d'autres 1 et avant tous les 2.

Description

Requis. Description localisable du modèle ou de l'Assistant qui s'affichera dans la boîte de dialogue Ajouter un élément lorsque l'élément est sélectionné. Il peut s'agir d'une chaîne ou d'un identificateur de ressource sous la forme #ResID. S'applique uniquement aux fichiers modèles, et non aux dossiers.

DLLPath ou {clsidPackage}

Requis. Spécifie le chemin d'accès complet d'une DLL ou d'un fichier EXE, ou le GUID d'un produit qui utilise un fichier .dll qui contient une icône à charger pour l'Assistant. Cette icône est chargée sous la forme d'une ressource à partir d'un fichier DLL/EXE en utilisant le IconResourceId donné. Ce paramètre substitue {clsidPackage}, si spécifié, pour l'emplacement d'icône. S'applique uniquement aux fichiers modèles, et non aux dossiers.

IconResourceId

Optionnel. Identificateur de ressource dans le fichier DLL qui détermine l'icône à afficher. Si aucune icône n'est définie, l'environnement remplace l'icône par défaut par un fichier avec la même extension que l'élément. S'applique uniquement aux fichiers modèles, et non aux dossiers.

Flags

Optionnel. Consultez la description Flags et le tableau ci-dessous. S'applique uniquement aux fichiers modèles, et non aux dossiers.

SuggestedBaseName

Requis. Nom par défaut pour l'Assistant, affiché dans le champ Nom de la boîte de dialogue. Il peut s'agir d'une chaîne ou d'un identificateur de ressource sous la forme #ResID. Si le nom n'est pas unique, l'environnement ajoute un entier au nom. Par exemple, MyFile.aspx peut devenir MyFile1.aspx. Si aucun nom n'est indiqué, « Projet » est utilisé. S'applique uniquement aux fichiers modèles, et non aux dossiers.

  • Remarques
    Tout champ non obligatoire pour lequel il n'existe pas de données significatives doit contenir un zéro (0) en tant qu'espace réservé.

    Si aucun nom localisé n'est indiqué, le chemin d'accès relatif est utilisé.

    Si aucune icône n'est définie, l'environnement IDE remplace l'icône par défaut par un fichier portant la même extension.

    Si aucun nom de base proposé n'est fourni, « Projet » est utilisé.

  • Flags
    Inclut un groupe d'indicateurs de bits utilisés pour activer ou désactiver les champs Nom et Emplacement de la boîte de dialogue Ajouter un élément. En d'autres termes, lorsque l'utilisateur sélectionne Ajouter un nouvel élément dans le menu Ajouter, le projet détermine si le nom et l'emplacement s'affichent dans le volet Modèles, mais les indicateurs déterminent si le nom et l'emplacement sont disponibles pour l'utilisateur.

    Affectez à Flags la somme des valeurs individuelles. En d'autres termes, 33 est équivalent à VSDIRFLAG_NonLocalTemplate | VSDIRITEM_DisableLocationField.

    Nom de l'indicateur

    Valeur décimale

    Description

    VSDIRFLAG_NonLocalTemplate

    1

    Utiliser le comportement d'une interface utilisateur non locale et enregistrer les mécanismes.

    VSDIRFLAG_BlankSolution

    2

    Créez une solution vierge (vide). Ne créez pas de projet.

    VSDIRFLAG_DisableBrowseButton

    4

    Désactiver le bouton Parcourir pour ce projet ou cet élément.

    VSDIRFLAG_DontAddDefExtension

    8

    Ne pas ajouter d'extension par défaut au nom fourni pour l'élément (ce paramètre n'est pas valide pour les projets).

    VSDIRFLAG_DisableLocationField

    32

    Désactiver le champ Emplacement pour ce projet ou cet élément.

    VSDIRFLAG_DontInitNameField

    4096

    Ne pas initialiser le champ Nom de ce projet ou de cet élément avec un nom valide.

    VSDIRFLAG_DisableNameField

    8192

    Désactiver le champ Nom pour ce projet ou cet élément.

Voir aussi

Tâches

Comment : créer un complément

Procédure pas à pas : création d'un Assistant

Concepts

Conception d'un Assistant

Configuration des fichiers .VsZ pour démarrer des Assistants

Autres ressources

Création de compléments et d'Assistants