Implantação de uma DSL por MSI e VSIX

Você pode instalar uma linguagem específica de domínio em seu computador ou em outros computadores. O Visual Studio já precisa estar instalado no computador de destino.

Escolher entre a implantação do VSIX e do MSI

Há dois métodos de implantação de uma linguagem específica de domínio:

Método Benefícios
VSX (Extensão do Visual Studio) Ela é muito fácil de implantar: copie e execute o arquivo .vsix do projeto DslPackage.

Para obter mais informações, confira Instalar e desinstalar uma DSL usando o VSX.
MSI (arquivo do instalador) – Permite que o usuário abra o Visual Studio clicando duas vezes em um arquivo DSL.
– Associa um ícone ao tipo de arquivo DSL no computador de destino.
– Associa um XSD (esquema XML) ao tipo de arquivo DSL. Isso evita avisos quando o arquivo é carregado no Visual Studio.

Você precisa adicionar um projeto de instalação à sua solução para criar um MSI.

Para obter mais informações, confira Implantar uma DSL usando um arquivo MSI.

Instalar e desinstalar uma DSL usando o VSX

Quando a DSL é instalada por esse método, o usuário pode abrir um arquivo DSL de dentro do Visual Studio, mas o arquivo não pode ser aberto no Windows Explorer.

Para instalar uma DSL usando o VSX

  1. Localize o arquivo .vsix criado pelo projeto do pacote DSL:

    1. Em Gerenciador de Soluções, clique com o botão direito do mouse no projeto DslPackage e clique em Abrir Pasta no Explorador de Arquivos.

    2. Localize o arquivo bin\*\SeuProjeto. DslPackage.vsix

  2. Copie o arquivo .vsix para o computador de destino no qual você deseja instalar a DSL. Pode ser o seu computador ou um outro.

  3. No computador de destino, clique duas vezes no arquivo .vsix.

    O Instalador de Extensão do Visual Studio é aberto e instala a extensão.

  4. Inicie ou reinicie o Visual Studio.

  5. Para testar a DSL, use o Visual Studio para criar um arquivo que tenha a extensão que você definiu para sua DSL.

Para desinstalar uma DSL que foi instalada usando o VSX

  1. No menu Ferramentas, escolha Extensões e Atualizações.

  2. Expanda Extensões Instaladas.

  3. Selecione a extensão na qual a DSL está definida e clique em Desinstalar.

    Raramente, uma extensão com falha não tem êxito ao carregar e cria um relatório na janela de erro, mas não aparece no Gerenciador de Extensões. Nesse caso, você pode remover a extensão excluindo o arquivo de:

    LocalAppData\Microsoft\VisualStudio\10.0\Extensions

Implantar uma DSL em um MSI

Ao definir um arquivo MSI (Windows Installer) para sua DSL, você pode permitir que os usuários abram arquivos DSL do Windows Explorer. Você também pode associar um ícone e uma breve descrição à extensão de nome de arquivo. Além disso, o MSI pode instalar um XSD que pode ser usado para validar arquivos DSL. Se desejar, você pode adicionar outros componentes ao MSI que serão instalados ao mesmo tempo.

Para obter mais informações sobre arquivos MSI e outras opções de implantação, confira Implantar aplicativos, serviços e componentes.

Para criar um MSI, adicione um projeto de Instalação à sua solução do Visual Studio. O método mais fácil de criar um projeto de Instalação é usar o modelo CreateMsiSetupProject.tt, que você pode baixar do site do VMSDK.

Para implantar uma DSL em um MSI

  1. Defina InstalledByMsi no manifesto da extensão. Isso impede que o VSX seja instalado e desinstalado, exceto pelo MSI. Isso será importante se você incluir outros componentes no MSI.

    1. Abra DslPackage\source.extension.tt

    2. Insira a seguinte linha antes de <SupportedProducts>:

      <InstalledByMsi>true</InstalledByMsi>
      
  2. Crie ou edite um ícone que representará sua DSL no Windows Explorer. Por exemplo, edite DslPackage\Resources\File.ico

  3. Verifique se os seguintes atributos da DSL estão corretos:

    • No Gerenciador de DSL, clique no nó raiz e, na janela Propriedades, examine:

      • Descrição

      • Versão

    • Clique no nó Editor e, no janela Propriedades, clique em Ícone. Defina o valor para fazer referência a um arquivo de ícone em DslPackage\Resources, como File.ico

    • No menu Compilar, abra o Configuration Manager e selecione a configuração que você deseja compilar, como Versão ou Depuração.

  4. Acesse a página inicial do SDK de Visualização e Modelagem e, na guia Downloads, baixe CreateMsiSetupProject.tt.

  5. Adicione CreateMsiSetupProject.tt ao seu projeto DSL.

    O Visual Studio criará um arquivo chamado CreateMsiSetupProject.vdproj.

  6. No Windows Explorer, copie Dsl\*.vdproj para uma nova pasta chamada Instalação.

    (Se desejar, agora você poderá excluir CreateMsiSetupProject.tt do seu projeto Dsl.)

  7. No Gerenciador de Soluções, adicione Setup\*.vdproj como um projeto existente.

  8. No menu Projeto, clique em Dependências do Projeto.

    Na caixa de diálogo Dependências do Projeto, selecione o projeto de instalação.

    Selecione a caixa ao lado de DslPackage.

  9. Recriar a solução.

  10. No Windows Explorer, localize o arquivo MSI criado em seu projeto de Instalação.

    Copie o arquivo MSI para um computador no qual você deseja instalar sua DSL. Clique duas vezes no arquivo MSI. O instalador é executado.

  11. No computador de destino, crie um arquivo que tenha a extensão de arquivo de sua DSL. Verifique se:

    • Na exibição de lista do Windows Explorer, o arquivo aparece com o ícone e a descrição que você definiu.

    • Quando você clica duas vezes no arquivo, o Visual Studio é iniciado e abre o arquivo DSL no editor de DSL.

    Se preferir, você pode criar o projeto de Instalação manualmente, em vez de usar o modelo de texto. Para obter um passo a passo que inclui este procedimento, confira o Capítulo 5 do Laboratório do SDK de Visualização e Modelagem.

Para desinstalar uma DSL que foi instalada de uma MSI

  1. No Windows, abra o painel de controle Programas e Recursos.

  2. Desinstale a DSL.

  3. Reinicie o Visual Studio.