Inscription de modèles de projet et d’élémentRegistering Project and Item Templates

Types de projets doivent inscrire les répertoires où se trouvent leurs modèles de projet et d’élément de projet.Project types must register the directories where their project and project-item templates are located. Visual StudioVisual Studio utilise les informations d’inscription associées à vos types de projet pour déterminer les éléments à afficher dans le ajouter un nouveau projet et ajouter un nouvel élément boîtes de dialogue. uses the registration information associated with your project types to determine what to show in the Add New Project and Add New Item dialog boxes.

Pour plus d’informations sur les modèles, consultez Ajout d’un projet et des modèles d’élément de projet.For more information about templates, see Adding Project and Project Item Templates.

Entrées de Registre pour les projetsRegistry Entries for Projects

Les exemples suivants montrent les entrées de Registre sous HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\<Version>.The following examples show registry entries under HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\<Version>. Les tableaux qui accompagne cet article expliquent les éléments utilisés dans les exemples.The accompanying tables explain the elements used in the examples.

[Projects\{ProjectGUID}]  
@="MyProjectType"  
"DisplayName"="#2"  
"Package"="{VSPackageGUID}"  
"ProjectTemplatesDir"="C:\\MyProduct\\MyProjectTemplates"  
NameName TypeType DescriptionDescription
@ REG_SZREG_SZ Nom par défaut des projets de ce type.Default name of projects of this kind.
DisplayNameDisplayName REG_SZREG_SZ ID de ressource du nom doivent être extraites de la DLL satellite inscrit sous Packages.Resource ID of the name to be retrieved from the satellite DLL registered under Packages.
PackagePackage REG_SZREG_SZ ID de classe du package est enregistré sous Packages.Class ID of the package registered under Packages.
ProjectTemplatesDirProjectTemplatesDir REG_SZREG_SZ Chemin d’accès de la valeur par défaut des fichiers de modèle de projet.Default path of the Project Template files. Les fichiers de modèle de projet sont affichés par le nouveau projet modèle.The Project Template files are displayed by the New Project template.

L’inscription de modèles d’élémentRegistering Item Templates

Vous devez inscrire le répertoire où vous stockez des modèles d’élément.You must register the directory where you store item templates.

[Projects\{ProjectGUID}\AddItemTemplates\TemplateDirs\{VSPackageGUID}\1]  
@="#7"  
"TemplatesDir"="C:\\MyProduct\\MyProjectItemTemplates "  
"TemplatesLocalizedSubDir"="#10"  
"SortPriority"=dword:00000064  
NameName TypeType DescriptionDescription
@ REG_SZREG_SZ ID de ressource pour les modèles d’ajouter un élément.Resource ID for Add Item templates.
TemplatesDirTemplatesDir REG_SZREG_SZ Chemin d’accès des éléments de projet affiché dans la boîte de dialogue pour le ajouter un nouvel élément Assistant.Path of the project items displayed in the dialog box for the Add New Item wizard.
TemplatesLocalizedSubDirTemplatesLocalizedSubDir REG_SZREG_SZ ID de ressource d’une chaîne qui nomme le sous-répertoire de TemplatesDir qui conserve des modèles localisés.Resource ID of a string that names the subdirectory of TemplatesDir that holds localized templates. Étant donné que Visual StudioVisual Studio charge la ressource de chaîne à partir de DLL satellites si vous les avez, chaque DLL satellite peut contenir un nom de sous-répertoire localisés différents.Because Visual StudioVisual Studio loads the string resource from satellite DLLs if you have them, each satellite DLL can contain a different localized subdirectory name.
SortPrioritySortPriority REG_DWORDREG_DWORD Définissez SortPriority pour régir l’ordre dans lequel les modèles sont affichés dans le ajouter un nouvel élément boîte de dialogue.Set SortPriority to govern the order in which templates are displayed in the Add New Item dialog box. Plus grandes valeurs SortPriority apparaissent plus haut dans la liste des modèles.Larger SortPriority values appear earlier in the template list.

L’inscription des filtres de fichiersRegistering file filters

Si vous le souhaitez, vous pouvez inscrire des filtres qui Visual StudioVisual Studio utilise lorsqu’il vous invite à entrer des noms de fichier.Optionally, you can register filters that Visual StudioVisual Studio uses when it prompts for file names. Par exemple, le Visual C#Visual C# filtrer pour le ouvrir un fichier boîte de dialogue est :For example, the Visual C#Visual C# filter for the Open File dialog box is:

Fichiers Visual c# (*.cs,*.resx,*.settings,*.xsd,*.wsdl) ;*. cs,*.resx,*.settings,*.xsd,*.wsdl)Visual C# Files (*.cs,*.resx,*.settings,*.xsd,*.wsdl);*.cs,*.resx,*.settings,*.xsd,*.wsdl)

Pour prendre en charge l’inscription de plusieurs filtres, chaque filtre est inscrit dans sa propre sous-clé sous HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\<Version> \Projects\{} < ProjectGUID>} \Filters\<sous-clé>.To support registration of multiple filters, each filter is registered in its own subkey under HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\<Version>\Projects\{<ProjectGUID>}\Filters\<Subkey>. Le nom de la sous-clé est arbitraire ; Visual StudioVisual Studio ignore les nom de la sous-clé et utilise simplement ses valeurs.The subkey name is arbitrary; Visual StudioVisual Studio ignores the subkey's name and uses just its values.

Vous pouvez contrôler les contextes dans lesquels un filtre est utilisé en définissant des indicateurs, illustrés dans le tableau suivant.You can control the contexts in which a filter is used by setting flags, shown in the following table. Si un filtre n’a pas de définir des indicateurs, il sera répertorié après les filtres courants dans le ajouter un élément existant boîte de dialogue et le ouvrir un fichier boîte de dialogue, mais il ne sera pas utilisé dans le rechercher dans les fichiers boîte de dialogue.If a filter does not have any flags set, it will be listed after the common filters in the Add Existing Item dialog box and the Open File dialog box, but it will not be used in the Find in Files dialog box.

[Projects\{ProjectGUID}\Filters\MyLanguageFilter]  
@="#3"  
"CommonOpenFilesFilter"=dword:00000000  
"CommonFindFilesFilter"=dword:00000000  
"FindInFilesFilter"=dword:00000000  
"NotOpenFileFilter"=dword:00000000  
"NotAddExistingItemFilter"=dword:00000000  
"SortPriority"=dword:00000064  
NameName TypeType DescriptionDescription
CommonFindFilesFilterCommonFindFilesFilter REG_DWORDREG_DWORD Rend le filtre de l’un des filtres courants dans le rechercher dans les fichiers boîte de dialogue.Makes the filter one of the common filters in the Find in Files dialog box. Filtres communs sont répertoriés dans la liste des filtres avant les filtres ne pas marqué comme commun.Common filters are listed in the filter list before filters not marked as common.
CommonOpenFilesFilterCommonOpenFilesFilter REG_DWORDREG_DWORD Rend le filtre de l’un des filtres courants dans le ouvrir un fichier boîte de dialogue.Makes the filter one of the common filters in the Open File dialog box. Filtres communs sont répertoriés dans la liste des filtres avant les filtres ne pas marqué comme commun.Common filters are listed in the filter list before filters not marked as common.
FindInFilesFilterFindInFilesFilter REG_DWORDREG_DWORD Répertorie le filtre après les filtres courants dans le rechercher dans les fichiers boîte de dialogue.Lists the filter after the common filters in the Find in Files dialog box.
NotOpenFileFilterNotOpenFileFilter REG_DWORDREG_DWORD Indique que le filtre n’est pas utilisé dans le ouvrir un fichier boîte de dialogue.Indicates that the filter is not used in the Open File dialog box.
NotAddExistingItemFilterNotAddExistingItemFilter REG_DWORDREG_DWORD Indique que le filtre n’est pas utilisé dans le ajouter un élément existant boîte de dialogue.Indicates that the filter is not used in the Add Existing Item dialog box.
SortPrioritySortPriority REG_DWORDREG_DWORD Définissez SortPriority pour régir l’ordre dans lequel les filtres sont affichés.Set SortPriority to govern the order in which filters are displayed. Plus grandes valeurs SortPriority apparaissent plus haut dans la liste de filtres.Larger SortPriority values appear earlier in the filter list.

Structure de répertoiresDirectory Structure

VSPackages peut placer les dossiers et fichiers de modèle n’importe où sur un disque local ou distant, tant que l’emplacement est enregistré via l’environnement de développement intégré (IDE).VSPackages can put template files and folders anywhere on a local or remote disk, as long as the location is registered through the integrated development environment (IDE). Toutefois, pour faciliter l’organisation, nous recommandons la structure de répertoire suivante sous le chemin d’installation de votre produit.However, for ease of organization, we recommend the following directory structure under your product's installation path.

\Templates\Templates

\Projects (contient les modèles de projet)\Projects (contains the project templates)

\Applications\Applications

\Components\Components

\ ...\ ...

\ProjectItems (contient les éléments de projet)\ProjectItems (contains the project items)

\CLASSE\Class

\Form\Form

\Web Page\Web Page

\HelperFiles (contient les fichiers utilisés dans les éléments de plusieurs fichiers projet)\HelperFiles (contains the files used in multi-file project items)

\WizardFiles\WizardFiles

Voir aussiSee Also

Ajout de projet et modèles d’élément de projet Adding Project and Project Item Templates
Assistants Wizards
Localisation d’applications Localizing Applications
CATID des objets qui sont généralement utilisés pour étendre des projetsCATIDs for Objects That Are Typically Used to Extend Projects