Compartir a través de


Implementación mediante MSI y VSIX de un DSL

Puede instalar un lenguaje específico de dominio en su propio equipo o en otros equipos. Visual Studio ya debe estar instalado en el equipo de destino.

Elección entre la implementación de VSIX y MSI

Hay dos métodos para implementar un lenguaje específico de dominio:

Método Ventajas
VSX (extensión de Visual Studio) Muy fácil de implementar: copie y ejecute el archivo .vsix desde el proyecto DslPackage.

Para obtener más información, vea Instalación y desinstalación de un DSL mediante VSX.
MSI (archivo del instalador) - Permite al usuario abrir Visual Studio haciendo doble clic en un archivo DSL.
- Asocia un icono con el tipo de archivo DSL en el equipo de destino.
- Asocia un XSD (esquema XML) con el tipo de archivo DSL. Esto evita advertencias cuando el archivo se carga en Visual Studio.

Debe agregar un proyecto de instalación a la solución para crear un MSI.

Para obtener más información, consulte Implementación de un DSL en un MSI.

Instalación y desinstalación de un DSL mediante VSX

Cuando este método instala su DSL, el usuario puede abrir un archivo DSL desde Visual Studio, pero el archivo no se puede abrir desde el Explorador de Windows.

Para instalar un DSL mediante VSX

  1. Busque el archivo .vsix compilado por el proyecto del paquete DSL:

    1. En el Explorador de soluciones, haga clic con el botón derecho en el proyecto DslPackage y, a continuación, haga clic en Abrir carpeta en Explorador de archivos.

    2. Busque el archivo bin\*\YourProject.DslPackage.vsix

  2. Copie el archivo .vsix en el equipo de destino en el que desea instalar el DSL. Puede tratarse de su propio equipo o de otro.

  3. En el equipo de destino, haga doble clic en el archivo .vsix.

    ElInstalador de extensiones de Visual Studio se abre e instala la extensión.

  4. Inicie o reinicie Visual Studio.

  5. Para probar el DSL, use Visual Studio para crear un nuevo archivo que tenga la extensión que ha definido para el DSL.

Para desinstalar un DSL que se instaló mediante VSX

  1. En el menú Herramientas , elija Extensiones y actualizaciones.

  2. Expanda Extensiones instaladas.

  3. Seleccione la extensión en la que se define el DSL y, a continuación, haga clic en Desinstalar.

    En contadas ocasiones, una extensión defectuosa no se carga y crea un informe en la ventana de error, aunque no aparece en el Administrador de extensiones. En ese caso, puede quitar la extensión eliminando el archivo de:

    LocalAppData\Microsoft\VisualStudio\10.0\Extensions

Implementación de un DSL en un MSI

Al definir un archivo MSI (Windows Installer) para su DSL, puede permitir que los usuarios abran archivos DSL desde el Explorador de Windows. También puede asociar un icono y una descripción breve con la extensión de nombre de archivo. Además, el MSI puede instalar un XSD que se puede usar para validar archivos DSL. Si lo desea, puede agregar otros componentes al MSI que se instalarán al mismo tiempo.

Para obtener más información sobre los archivos MSI y otras opciones de implementación, vea Implementación de aplicaciones, servicios y componentes.

Para compilar una MSI, agregue un proyecto de instalación a la solución de Visual Studio. El método más fácil para crear un proyecto de instalación es usar la plantilla de CreateMsiSetupProject.tt, que puede descargar desde el sitio de VMSDK.

Para implementar un DSL en un MSI

  1. Establezca InstalledByMsi en el manifiesto de la extensión. Esto impide que VSX se instale y desinstale excepto con el MSI. Esto es importante si incluirá otros componentes en el MSI.

    1. Abra DslPackage\source.extension.tt.

    2. Inserte la línea siguiente antes de <SupportedProducts>:

      <InstalledByMsi>true</InstalledByMsi>
      
  2. Cree o edite un icono que representará el DSL en el Explorador de Windows. Por ejemplo, edite DslPackage\Resources\File.ico.

  3. Asegúrese de que los siguientes atributos de su DSL son correctos:

    • En el Explorador de DSL, haga clic en el nodo raíz y, en la ventana Propiedades, revise:

      • Descripción

      • Versión

    • Haga clic en el nodo Editor y, en la ventana Propiedades, haga clic en Icono. Establezca el valor para hacer referencia a un archivo de icono en DslPackage\Resources, como File.ico.

    • En el menú Compilar, abra el Administrador de configuración y seleccione la configuración que desea compilar, como Versión o Depuración.

  4. Vaya a la página principal del SDK de visualización y modelado y, en la pestaña Descargas, descargue CreateMsiSetupProject.tt.

  5. Agregue CreateMsiSetupProject.tt al proyecto de DSL.

    Visual Studio creará un archivo denominado CreateMsiSetupProject.vdproj.

  6. En el Explorador de Windows, copie Dsl\*.vdproj en una nueva carpeta denominada Setup.

    (Si lo desea, ahora puede excluir CreateMsiSetupProject.tt del proyecto de DSL).

  7. En el Explorador de soluciones, agregue Setup\*.vdproj como un proyecto existente.

  8. En el menú Proyecto, haga clic en Dependencias del proyecto.

    En el cuadro de diálogo Dependencias del proyecto, seleccione el proyecto de instalación.

    Seleccione la casilla situada junto a DslPackage.

  9. Recompilar la solución.

  10. En el Explorador de Windows, busque el archivo MSI integrado en el proyecto de instalación.

    Copie el archivo MSI en un equipo en el que desea instalar el DSL. Haga doble clic en el archivo MSI. El instalador se ejecuta.

  11. En el equipo de destino, cree un archivo que tenga la extensión de archivo del DSL. Compruebe lo siguiente:

    • En la vista de lista del Explorador de Windows, el archivo aparece con el icono y la descripción que ha definido.

    • Al hacer doble clic en el archivo, Visual Studio se inicia y abre el archivo DSL en el editor de DSL.

    Si lo prefiere, puede crear el proyecto de instalación manualmente, en lugar de usar la plantilla de texto. Para ver un tutorial que incluya este procedimiento, consulte el capítulo 5 del laboratorio del SDK de visualización y modelado.

Para desinstalar un DSL que se instaló desde un MSI

  1. En Windows, abra el panel de control Programas y características.

  2. Desinstale el DSL.

  3. Reinicie Visual Studio.