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