Introducción a la implementación

Los temas de esta sección presentan instrucciones y pautas sobre la implementación de diferentes tipos de aplicaciones de Windows.

Ventajas y desventajas del empaquetado de la aplicación

La primera decisión será si empaquetar o no la aplicación.

  • Aplicación empaquetada. Las aplicaciones empaquetadas son el único tipo que tiene identidad del paquete en tiempo de ejecución. La identidad del paquete es necesaria para muchas características de extensibilidad de Windows, incluidas las tareas en segundo plano, las notificaciones, los iconos dinámicos, las extensiones de menú contextual personalizadas y los destinos de recursos compartidos. Esto se debe a que el sistema operativo (SO) debe ser capaz de identificar al autor de la llamada de la API correspondiente. Consulte Características que requieren la identidad del paquete.
    • Normalmente, el proceso de una aplicación empaquetada se ejecuta dentro de un contenedor de aplicaciones ligero y se aísla mediante la virtualización del registro y el sistema de archivos (consulte AppContainer para aplicaciones heredadas y Aplicaciones de MSIX AppContainer). No obstante, se puede configurar una aplicación empaquetada para que no se ejecute en un contenedor de aplicaciones.
    • Una aplicación empaquetada se empaqueta mediante la tecnología MSIX (consulte ¿Qué es MSIX?).
    • Aplicación empaquetada con ubicación externa. Pero dado que algunas aplicaciones existentes aún no están listas para que todo su contenido esté presente dentro de un paquete de MSIX, hay una opción para que la aplicación se empaquete con ubicación externa. Esto permite que su aplicación tenga identidad de paquete; de este modo, podrá usar las características que lo requieran. Para más información, consulte Concesión de la identidad del paquete mediante el empaquetado con ubicación externa.
    • También se instala una aplicación empaquetada mediante MSIX. Pero si opta por empaquetar con ubicación externa, puede verlo como un modelo de "traiga su propio instalador". Así que tendrá que hacer algo de trabajo de instalación con esa opción. Básicamente, es una opción híbrida entre una aplicación empaquetada y una sin empaquetar.
  • Aplicación sin empaquetar. Se puede optar por no recibir nada de MSIX mediante la creación de una aplicación sin empaquetar. Pero tenga en cuenta que una aplicación sin empaquetar no tiene identidad de paquete en tiempo ejecución; por tanto, se pierden algunas características de Windows (vea Características que requieren la identidad del paquete).

Cada tipo de aplicación se puede publicar en Microsoft Store e instalarse de esa manera o mediante el Instalador de aplicación de Windows.

Importante

Se recomienda empaquetar la aplicación y configurarla para que se ejecute en un contenedor de aplicaciones. Será una experiencia de instalación y actualización sencilla, actual y confiable para los clientes, y será segura en tiempo de ejecución.

Empaquetado (y, opcionalmente, en ejecución en un contenedor de aplicaciones) Empaquetada con ubicación externa o sin empaquetar
Ventajas Ofrece a los usuarios una manera fácil de instalar, desinstalar y actualizar la aplicación. La desinstalación es limpia: cuando se desinstala la aplicación, el sistema se restaura al mismo estado en el que estaba antes de la instalación, no queda ningún artefacto. Este tipo de aplicación también admite actualizaciones incrementales y automáticas. Además, Microsoft Store está optimizado para aplicaciones de este tipo (aunque se pueden usar dentro o fuera de Store).

Obtiene las ventajas de tener la identidad del paquete.
Con estas opciones, la aplicación no tiene restricción en cuanto al tipo de aplicación que es, las API a las que puede llamar y su acceso al Registro y al sistema de archivos.

El empaquetado con ubicación externa significa que consigue las ventajas de tener la identidad del paquete.
Desventajas La aplicación está limitada en cuanto al tipo de aplicación que puede ser y a la agencia que puede tener dentro del sistema. Un servicio NT no es posible, por ejemplo. Las opciones de comunicación entre procesos (IPC) son limitadas, el acceso con privilegios o con privilegios elevados está restringido si se publica en Microsoft Store y el acceso a archivos o al Registro se virtualiza (pero también puede consultar Virtualización flexible). Además, en algunas situaciones, las directivas empresariales pueden deshabilitar las actualizaciones deshabilitando Microsoft Store. Con estas opciones, una aplicación corre el riesgo de provocar una acumulación de datos de configuración y software obsoletos después de desinstalar la aplicación. Esto puede ser un problema para el cliente y para el sistema.

Normalmente, la aplicación se instalará y actualizará mediante archivos .exe o .msi, mediante un instalador personalizado, ClickOnce o una implementación de xcopy.

Una aplicación sin empaquetar carece de las ventajas de disponer de una identidad del paquete.

Para obtener más información sobre la ubicación de la instalación del paquete, el directorio de trabajo y la virtualización del registro, consulte Información sobre la ejecución de aplicaciones de escritorio empaquetadas en Windows.

Uso dl SDK para aplicaciones de Windows

Después de decidir si va a empaquetar o no la aplicación, puede decidir si quiere usar o no el SDK de aplicaciones para Windows en la aplicación. Consulte Información general de la implementación del SDK para aplicaciones de Windows.

Aplicaciones de escritorio Win32 y .NET

Si crea una aplicación de escritorio Win32 (también denominada a veces aplicación de escritorio clásica) o una aplicación .NET, incluidas Windows Presentation Foundation (WPF) y Windows Forms (WinForms), puede empaquetar e implementar la aplicación mediante MSIX.

También puede empaquetar e implementar estos tipos de aplicaciones mediante otras tecnologías de instalación.

Aplicaciones para UWP

Las aplicaciones para UWP se empaquetan e implementan mediante MSIX.