Compartilhar via


Empacotar e implantar minhas extensões personalizadas (Visual Basic)

O Visual Basic fornece uma maneira fácil de implantar suas extensões de namespace personalizadas My usando modelos do Visual Studio. Se você estiver criando um modelo de projeto para o qual suas My extensões são parte integrante do novo tipo de projeto, basta incluir seu código de extensão personalizado My com o projeto quando exportar o modelo. Para obter mais informações sobre como exportar modelos de projeto, consulte Como criar modelos de projeto.

Se a extensão personalizada My estiver em um único arquivo de código, você poderá exportar o arquivo como um modelo de item que os usuários podem adicionar a qualquer tipo de projeto do Visual Basic. Em seguida, você pode personalizar o modelo de item para habilitar recursos e comportamento adicionais para sua extensão personalizada My em um projeto do Visual Basic. Esses recursos incluem o seguinte:

  • Permitir que os usuários gerenciem sua extensão personalizada My na página Minhas Extensões do Designer de Projeto do Visual Basic.

  • Adicione automaticamente sua extensão personalizada My quando uma referência a um assembly especificado for adicionada a um projeto.

  • Ocultar o My modelo de item de extensão na caixa de diálogo Adicionar Item para que ele não seja incluído na lista de itens de projeto.

Este tópico discute como empacotar uma extensão personalizada My como um modelo de item oculto que pode ser gerenciado na página Minhas Extensões do Designer de Projeto do Visual Basic. A extensão personalizada My também pode ser adicionada automaticamente quando uma referência a um assembly especificado é adicionada a um projeto.

Criar uma extensão do meu namespace

A primeira etapa na criação de um pacote de implantação para uma extensão personalizada My é criar a extensão como um único arquivo de código. Para obter detalhes e diretrizes sobre como criar uma extensão personalizada My , consulte Estender o Meu Namespace no Visual Basic.

Exportar uma extensão do meu namespace como um modelo de item

Depois de ter um arquivo de código que inclua sua My extensão de namespace, você poderá exportar o arquivo de código como um modelo de item do Visual Studio. Para obter instruções sobre como exportar um arquivo como um modelo de item do Visual Studio, consulte Como criar modelos de item.

Observação

Se a My extensão do namespace tiver uma dependência em um assembly específico, você poderá personalizar o modelo de item para instalar automaticamente sua My extensão de namespace quando uma referência a esse assembly for adicionada. Como resultado, você desejará excluir essa referência de assembly ao exportar o arquivo de código como um modelo de item do Visual Studio.

Personalizar o modelo de item

Você pode habilitar o modelo de item a ser gerenciado na página Minhas Extensões do Designer de Projeto do Visual Basic. Você também pode habilitar o modelo de item a ser adicionado automaticamente quando uma referência a um assembly especificado é adicionada a um projeto. Para habilitar essas personalizações, você adicionará um novo arquivo, chamado de arquivo CustomData, ao modelo e adicionará um novo elemento ao XML em seu arquivo .vstemplate.

Adicionar o arquivo CustomData

O arquivo CustomData é um arquivo de texto que tem uma extensão de nome de arquivo de . CustomData (o nome do arquivo pode ser definido como qualquer valor significativo para o modelo) e que contém XML. O XML no arquivo CustomData instrui o Visual Basic a incluir sua My extensão quando os usuários usam a página Minhas Extensões do Designer de Projeto do Visual Basic. Opcionalmente, você pode adicionar o <AssemblyFullName> atributo ao XML do arquivo CustomData. Isso instrui o Visual Basic a instalar automaticamente sua extensão personalizada My quando uma referência a um assembly específico é adicionada ao projeto. Você pode usar qualquer editor de texto ou editor XML para criar o arquivo CustomData e, em seguida, adicioná-lo à pasta compactada do modelo de item (arquivo.zip).

Por exemplo, o XML a seguir mostra o conteúdo de um arquivo CustomData que adicionará o item de modelo à pasta Minhas Extensões de um projeto do Visual Basic quando uma referência ao assembly Microsoft.VisualBasic.PowerPacks.Vs.dll for adicionada ao projeto.

<VBMyExtensionTemplate
    ID="Microsoft.VisualBasic.Samples.MyExtensions.MyPrinterInfo"
    Version="1.0.0.0"
    AssemblyFullName="Microsoft.VisualBasic.PowerPacks.vs"
/>

O arquivo CustomData contém um <VBMyExtensionTemplate> elemento que tem atributos conforme listado na tabela a seguir.

Atributo Descrição
ID Obrigatório Um identificador exclusivo para a extensão. Se a extensão que tem essa ID já tiver sido adicionada ao projeto, o usuário não será solicitado a adicioná-la novamente.
Version Obrigatório Um número de versão para o modelo de item.
AssemblyFullName Opcional. Um nome de assembly. Quando uma referência a esse assembly for adicionada ao projeto, o usuário será solicitado a adicionar a extensão My deste modelo de item.

Adicionar o <elemento CustomDataSignature> ao arquivo .vstemplate

Para identificar o modelo de item do Visual Studio como uma My extensão de namespace, você também deve modificar o arquivo .vstemplate para o modelo de item. Você deve adicionar um <CustomDataSignature> elemento ao <TemplateData> elemento. O <CustomDataSignature> elemento deve conter o texto Microsoft.VisualBasic.MyExtension, conforme mostrado no exemplo a seguir.

<CustomDataSignature>Microsoft.VisualBasic.MyExtension</CustomDataSignature>

Você não pode modificar arquivos em uma pasta compactada (.zip arquivo) diretamente. Você deve copiar o arquivo .vstemplate da pasta compactada, modificá-lo e substituir o arquivo .vstemplate na pasta compactada pela cópia atualizada.

O exemplo a seguir mostra o conteúdo de um arquivo .vstemplate que tem o <CustomDataSignature> elemento adicionado.

<VSTemplate Version="2.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="Item">
  <TemplateData>
    <DefaultName>MyCustomExtensionModule.vb</DefaultName>
    <Name>MyPrinterInfo</Name>
    <Description>Custom My Extensions Item Template</Description>
    <ProjectType>VisualBasic</ProjectType>
    <SortOrder>10</SortOrder>
    <Icon>__TemplateIcon.ico</Icon>
    <CustomDataSignature      >Microsoft.VisualBasic.MyExtension</CustomDataSignature>
  </TemplateData>
  <TemplateContent>
    <References />
    <ProjectItem SubType="Code"
                 TargetFileName="$fileinputname$.vb"
                 ReplaceParameters="true"
     >MyCustomExtensionModule.vb</ProjectItem>
  </TemplateContent>
</VSTemplate>

Instalar o modelo

Para instalar o modelo, você pode copiar a pasta compactada ( arquivo.zip ) para a pasta de modelos de item do Visual Basic. Por padrão, os modelos de item de usuário estão localizados em %USERPROFILE%\Documents\Visual Studio <Version>\Templates\ItemTemplates\Visual Basic. Como alternativa, você pode publicar o modelo como um arquivo do Instalador do Visual Studio (.vsi).

Consulte também