Share via


Creación de un paquete MSIX con MSIX Core a partir de código fuente

MSIX Core ofrece la implementación de MSIX para seleccionar versiones anteriores de Windows. Puede aprovechar el instalador de MSIX Core para crear una aplicación mediante ClickOnce. Esto permitirá a los usuarios descargar un archivo setup.exe e instalar la aplicación MSIX a través del instalador de MSIX Core.

Hospedaje de la aplicación en un servidor web

Para que la aplicación esté lista para arrancar con el instalador de MSIX Core, deberá hospedar el paquete de la aplicación en un servidor web. En esta sección se proporcionan detalles sobre cómo configurar una aplicación web en Azure, Internet Information Services (IIS) y Amazon Web Services (AWS).

Azure

Para usar esta opción, debe tener una suscripción de Azure. Para obtener una, consulte la página de la cuenta de Azure.

Creación de una aplicación web de Azure

Para empezar, vaya a la página de Azure Portal y siga estos pasos:

  1. Haga clic en Crear un recurso.
  2. Haga clic en Web y seleccione Aplicación web.
  3. En Detalles de instancia, cree un nombre de aplicación único y seleccione la configuración adecuada para la aplicación. Por ejemplo, tendrá que elegir entre código o contenedor de Docker y la pila en tiempo de ejecución. De lo contrario, deje todo lo demás en los valores predeterminados.
  4. Haga clic en Crear y finalice el asistente.

Hospedar el paquete de la aplicación y la página web

  1. Después de crear la aplicación web, seleccione la aplicación.
  2. En Herramientas de desarrollo, haga clic en Editor de App Service.
  3. En el editor, hay un archivo hostingstart.html predeterminado. Haga clic con el botón derecho en el espacio vacío de Explorador de archivos y seleccione Cargar archivos para empezar a cargar los paquetes de la aplicación.
  4. Haga clic con el botón derecho en el espacio vacío del panel Explorador de archivos de nuevo y seleccione Nuevos archivos para crear un nuevo archivo. Asigne al archivo el nombre que desea que sea la página HTML predeterminada.

Configuración de la aplicación web para los tipos MIME del paquete de aplicaciones

Agregue un nuevo archivo denominado Web.config a la aplicación web. Abra el archivo Web.config y añada el siguiente XML al archivo.

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <!--This is to allow the web server to serve resources with the appropriate file extensions-->
    <staticContent>
      <mimeMap fileExtension=".appx" mimeType="application/appx" />
      <mimeMap fileExtension=".msix" mimeType="application/msix" />
    </staticContent>
  </system.webServer>
</configuration>

Internet Information Services (IIS)

IIS es una característica opcional de Windows. Para instalar IIS:

  1. Haga clic en Inicio y busque Activar o desactivar las características de Windows.
  2. Seleccione Internet Information Services.
  3. Asegúrese también de instalar ASP.NET 4.5 o una versión posterior. En el cuadro de diálogo Características de Windows, expanda Internet Information Services ->World Wide Web Services ->Características de desarrollo de aplicaciones y seleccione una versión de ASP.NET mayor o igual que ASP.NET 4.5.
  4. Haga clic en OK para iniciar la instalación.

Se requieren Visual Studio 2017 (o una versión posterior) y herramientas de desarrollo web. Si ya tiene instalado Visual Studio 2017 o una versión posterior, asegúrese de que tiene instaladas las cargas de trabajo de desarrollo web y ASP.NET. De lo contrario, instale Visual Studio desde aquí.

Compilación de una aplicación web

Inicie Visual Studio como administrador y cree un nuevo proyecto de aplicación web de Visual C# con una plantilla de proyecto vacía.

Configure IIS con su aplicación web

  1. En el Explorador de soluciones, haga clic con el botón derecho en el proyecto y seleccione Propiedades.
  2. En propiedades, seleccione la pestaña Web.
  3. En la sección Servidores, elija IIS local en el menú desplegable y haga clic en Crear directorio virtual.

Agregue el paquete de la aplicación a la aplicación web

Agregue el paquete de aplicación que desea distribuir a la aplicación web:

  1. En el Explorador de soluciones, haz clic con el botón derecho en el nodo del proyecto.
  2. Seleccione Agregar ->Nueva carpeta y asigne un nombre a la carpeta paquetes.
  3. Para agregar paquetes de aplicaciones a la carpeta, haga clic con el botón derecho en la carpeta paquetes y seleccione Agregar ->Elemento existente. Vaya a la ubicación del paquete de la aplicación.

Crear una página web

Cree una página HTML o cualquier otra aplicación web según sea necesario según sus necesidades. Agregue el vínculo de su nuevo setup.exe.

Configuración de la aplicación web para los tipos MIME del paquete de aplicaciones

Abra el archivo Web.config desde el Explorador de soluciones y agregue el siguiente XML dentro del elemento < de configuración >.

<system.webServer>
  <!--This is to allow the web server to serve resources with the appropriate file extensions-->
  <staticContent>
    <mimeMap fileExtension=".appx" mimeType="application/appx" />
    <mimeMap fileExtension=".msix" mimeType="application/msix" />
  </staticContent>
</system.webServer>

Amazon Web Services (AWS)

Para usar esta opción, debe tener una pertenencia a AWS. Para más información, consulte los detalles de la cuenta de AWS.

Creación de un cubo de Amazon S3 y carga de los paquetes MSIX y las páginas web

Amazon Simple Storage Service (S3) es una oferta de AWS para recopilar, almacenar y analizar datos. Los cubos S3 son una manera cómoda de hospedar paquetes de aplicaciones de Windows 10 y páginas web para su distribución.

  1. Inicio de sesión en AWS En Servicios , busque S3.
  2. Seleccione Crear cubo y escriba un nombre de cubo para el sitio web. Siga las indicaciones del cuadro de diálogo para establecer las propiedades y los permisos. Para asegurarse de que la aplicación de Windows 10 se puede distribuir desde el sitio web, habilite permisos de lectura y escritura para el cubo y seleccione Conceder acceso de lectura público a este cubo. Haga clic en Crear cubo para finalizar este paso.
  3. Cuando haya terminado, cargue los paquetes MSIX y las páginas web en el cubo S3.

Configuración de la aplicación web para los tipos MIME del paquete de aplicaciones

Usar una interfaz de servicio web como el explorador S3 para agregar un nuevo encabezado HTTP predeterminado.

  1. Vaya a Herramientas y seleccione Encabezados HTTP predeterminados.
  2. En el cuadro de diálogo Encabezados HTTP predeterminados, haga clic en Agregar.
  3. En el cuadro de diálogo Agregar nuevos encabezados HTTP predeterminados, especifique el nombre del cubo, el nombre de archivo, el nombre del encabezado y el valor de encabezado y, a continuación, haga clic en Agregar nuevo encabezado.
    • Nombre del cubo: msix-packages
    • Nombre de archivo: *.msix
    • Nombre del encabezado: Content-Type
    • Valor de encabezado: application/msix

Nota:

 AWS tiene algunas directrices estrictas que tendrá que seguir. Por ejemplo, los nombres de cubo deben ser únicos y, por tanto, si usa el ejemplo anterior, deberá cambiar el nombre del cubo.

Uso del instalador de MSIX Core para compilar la aplicación ClickOnce

Busque la aplicación ClickOnce setup.exe. Esto hace referencia al clon del proyecto de Git, compilarlo y publicarlo a través del proyecto de Visual Studio.

Ejecute el comando URL para crear un nuevo archivo setup.exe

Asegúrese de que ha seguido las instrucciones para clonar, compilar y publicar la solución MSIX Core en Visual Studio. Como referencia, el proyecto de GitHub se puede encontrar aquí.

Vaya al directorio donde publicó el archivo setup.exe y, a continuación, ejecute este comando:

.\setup.exe -url=<location of your msix in the webservice>

Por ejemplo

.\setup.exe -url="https://appinstallerdemo.azurewebsites.net/MSIXCore/msixmgrWrapper.application?https://appinstallerdemo.azurewebsites.net/MSIXCore/notepadplus.msix#"

Firme la aplicación.

Dado que el paso anterior creó un nuevo setup.exe, deberá volver a firmar la aplicación para comprobar que es un editor de confianza de la aplicación y establecer la integridad de la aplicación. Puede usar SignTool y proporcionar el certificado.

Distribuir la aplicación a los usuarios

Ahora puede apuntar al nuevo setup.exe con un vínculo o un botón de descarga en su sitio web. MSIX Core está dirigido a los usuarios de Windows 10, versión 1703 y anteriores. El Instalador de aplicación es el proceso de instalación ideal para paquetes MSIX en Windows 1709 o una versión posterior. El Instalador de aplicación se optimiza para el espacio en disco en el lado del consumidor y puede instalar directamente aplicaciones desde ubicaciones HTTP. MSIX Core detectará si un consumidor está en Windows 1709 o una versión posterior y los redirigirá al Instalador de aplicación.

En Microsoft Edge, puede llamar al método getHostEnvironmentValue() y el campo os-build del valor devuelto especificará la versión del sistema operativo del usuario. Desde allí, puede pedir al proceso de instalación que use MSIX Core (para Windows 10, versión 1703 y versiones anteriores) o el Instalador de aplicación (para Windows 10, versión 1709 y posteriores).

Experiencia del usuario

Los usuarios simplemente descargan y ejecutan setup.exe desde la página web del desarrollador.

  • Si el instalador de MSIX Core aún no está instalado cuando el usuario ejecuta setup.exe, el usuario ve el símbolo del sistema ClickOnce y hace clic en Instalar para instalar el instalador de MSIX Core. El instalador inicia automáticamente y muestra la pantalla de instalación del paquete MSIX especificado en la cadena de consulta del desarrollador para que los usuarios puedan instalar la aplicación.
  • Si el instalador de MSIX Core ya está instalado cuando el usuario ejecuta setup.exe, el instalador de MSIX Core se inicia automáticamente y muestra la pantalla de instalación del paquete MSIX especificado en la cadena de consulta para que los usuarios instalen la aplicación.