Registrando modelos de projeto e item

Os tipos de projeto devem registrar os diretórios onde seus modelos de projeto e item de projeto estão localizados. O Visual Studio usa as informações de registro associadas aos seus tipos de projeto para determinar o que mostrar nas caixas de diálogo Adicionar Novo Projeto e Adicionar Novo Item .

Para obter mais informações sobre modelos, consulte Adicionando modelos de projeto e item de projeto.

Entradas de registro para projetos

Os exemplos a seguir mostram entradas do Registro em HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\<Version>. As tabelas que acompanham explicam os elementos usados nos exemplos.

[Projects\{ProjectGUID}]
@="MyProjectType"
"DisplayName"="#2"
"Package"="{VSPackageGUID}"
"ProjectTemplatesDir"="C:\\MyProduct\\MyProjectTemplates"
Nome Tipo Descrição
@ REG_SZ Nome padrão de projetos desse tipo.
DisplayName REG_SZ ID de recurso do nome a ser recuperado da DLL satélite registrada em Pacotes.
Pacote REG_SZ ID de classe do pacote registrado em Pacotes.
ProjectTemplatesDir REG_SZ Caminho padrão dos arquivos de modelo de projeto. Os arquivos de modelo de projeto são exibidos pelo modelo de novo projeto .

Registrando modelos de item

Você deve registrar o diretório onde armazena modelos de item.

[Projects\{ProjectGUID}\AddItemTemplates\TemplateDirs\{VSPackageGUID}\1]
@="#7"
"TemplatesDir"="C:\\MyProduct\\MyProjectItemTemplates "
"TemplatesLocalizedSubDir"="#10"
"SortPriority"=dword:00000064
Nome Tipo Descrição
@ REG_SZ ID do recurso para modelos Adicionar Item.
TemplatesDir REG_SZ Caminho dos itens de projeto exibidos na caixa de diálogo do assistente Adicionar Novo Item .
TemplatesLocalizedSubDir REG_SZ ID de recurso de uma cadeia de caracteres que nomeia o subdiretório de TemplatesDir que contém modelos localizados. Como o Visual Studio carrega o recurso de cadeia de caracteres de DLLs satélites se você as tiver, cada DLL satélite pode conter um nome de subdiretório localizado diferente.
SortPriority REG_DWORD Defina SortPriority para controlar a ordem em que os modelos são exibidos na caixa de diálogo Adicionar Novo Item . Valores SortPriority maiores aparecem anteriormente na lista de modelos.

Registrando filtros de arquivo

Opcionalmente, você pode registrar filtros que o Visual Studio usa quando solicita nomes de arquivo. Por exemplo, o filtro Visual C# para a caixa de diálogo Abrir arquivo é:

Arquivos Visual C# (*.cs,*.resx,*.settings,*.xsd,*.wsdl);*.cs,*.resx,*.settings,*.xsd,*.wsdl)

Para oferecer suporte ao registro de vários filtros, cada filtro é registrado em sua própria subchave em HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\Version>\Projects\{<ProjectGUID>}\Filters\<<Subkey.> O nome da subchave é arbitrário; O Visual Studio ignora o nome da subchave e usa apenas seus valores.

Você pode controlar os contextos nos quais um filtro é usado definindo sinalizadores, mostrados na tabela a seguir. Se um filtro não tiver nenhum sinalizador definido, ele será listado após os filtros comuns na caixa de diálogo Adicionar Item Existente e na caixa de diálogo Abrir Arquivo, mas não será usado na caixa de diálogo Localizar em Arquivos.

[Projects\{ProjectGUID}\Filters\MyLanguageFilter]
@="#3"
"CommonOpenFilesFilter"=dword:00000000
"CommonFindFilesFilter"=dword:00000000
"FindInFilesFilter"=dword:00000000
"NotOpenFileFilter"=dword:00000000
"NotAddExistingItemFilter"=dword:00000000
"SortPriority"=dword:00000064
Nome Tipo Descrição
CommonFindFilesFilter REG_DWORD Torna o filtro um dos filtros comuns na caixa de diálogo Localizar em arquivos . Os filtros comuns são listados na lista de filtros antes dos filtros não marcados como comuns.
CommonOpenFilesFilter REG_DWORD Torna o filtro um dos filtros comuns na caixa de diálogo Abrir arquivo . Os filtros comuns são listados na lista de filtros antes dos filtros não marcados como comuns.
FindInFilesFilter REG_DWORD Lista o filtro após os filtros comuns na caixa de diálogo Localizar em arquivos .
NotOpenFileFilter REG_DWORD Indica que o filtro não é usado na caixa de diálogo Abrir arquivo .
NotAddExistingItemFilter REG_DWORD Indica que o filtro não é usado na caixa de diálogo Adicionar Item Existente .
SortPriority REG_DWORD Defina SortPriority para controlar a ordem em que os filtros são exibidos. Valores SortPriority maiores aparecem anteriormente na lista de filtros.

Estrutura de diretórios

Os VSPackages podem colocar arquivos e pastas de modelo em qualquer lugar em um disco local ou remoto, desde que o local seja registrado por meio do ambiente de desenvolvimento integrado (IDE). No entanto, para facilitar a organização, recomendamos a seguinte estrutura de diretórios no caminho de instalação do produto.

\Modelos

\Projects (contém os modelos de projeto)

\Applications

\Componentes

\ ...

\ProjectItems (contém os itens de projeto)

\Classe

\Forma

\Página web

\HelperFiles (contém os arquivos usados em itens de projeto de vários arquivos)

\WizardFiles

Confira também