Conexión de aplicaciones desde Visual Studio
En este artículo se explica cómo crear paquetes listos para la conexión de aplicaciones mediante Visual Studio 2022 y publicarlos en Azure Virtual Desktop.
¿Qué es la conexión de aplicaciones?
La conexión de aplicaciones MSIX es una manera de proporcionar aplicaciones MSIX a máquinas virtuales y físicas. Sin embargo, la conexión de aplicaciones MSIX es diferente de MSIX normal, ya que se creó especialmente para productos compatibles, como Azure Virtual Desktop.
¿Por qué conectar aplicaciones?
Las empresas prefieren conectar aplicaciones para:
- Administración más sencilla de la imagen de Windows
- Mejor capacidad de administración de aplicaciones, incluidos costes de mantenimiento más bajos y mayor seguridad
Los datos de la aplicación transmitidos usan el servicio de roaming con el usuario. Esto les ayuda a ejecutar aplicaciones al instante y a continuar su experiencia dondequiera que estén.
La asociación de aplicaciones locales le permite ejecutar aplicaciones MSIX sin instalarlas en el dispositivo. Las API que permiten la asociación de aplicaciones locales son totalmente compatibles con Windows 11 Enterprise y Windows 10 Enterprise, y están integradas en el sistema operativo para montar y desmontar las aplicaciones. También puede usar cmdlets o scripts de PowerShell para automatizar el proceso.
Pasos de los requisitos previos
- Descargar e instalar Visual Studio 2012
- Configuración de Visual Studio para C#
- Configure la carga de trabajo "Desarrollo de Azure" en Visual Studio de la siguiente manera:
- Abrir el Instalador de Visual Studio
- Haga clic en Modificar
- Asegúrese de que Desarrollo de Azure esté seleccionado
- Haga clic en Modificar en la parte inferior para iniciar la actualización.
Una implementación de Azure Virtual Desktop en funcionamiento. Para aprender a implementar Azure Virtual Desktop (clásico), consulte Creación de un inquilino en Azure Virtual Desktop. Para aprender a implementar Azure Virtual Desktop con la integración de Azure Resource Manager, consulte Creación de un grupo de hosts con Azure Portal.
Para obtener la extensión de Visual Studio Marketplace, vaya aquí o busque "Kit de herramientas de conexión de aplicaciones".
Instale la extensión en Visual Studio haciendo doble clic en el archivo descargado anterior.
- Asegúrese de que el sistema está conectado a internet.
Nota:
Esta extensión solo es compatible con Visual Studio 2022.
Uso de la extensión
Una vez que tenga instalada la extensión en Visual Studio 2022:
- Inicie Visual Studio en modo elevado haciendo clic con el botón derecho y elija "Ejecutar como administrador".
- Cree una aplicación de escritorio WinUI 3 C# o C++ con la plantilla de proyecto de Visual Studio Blank App empaquetada (WinUI 3 en escritorio) que viene con la SDK de aplicaciones para Windows.
Nota:
El proceso de creación de imágenes MSIX solo se admite para aplicaciones WinUI3 en este momento.
- En el explorador de soluciones, haga clic con el botón derecho en el proyecto y elija Empaquetar y publicar ->Crear paquetes de conexión de aplicaciones:
- Ahora puede configurar el paquete seleccionando una ubicación de salida para el paquete MSIX y el archivo VHDx y seleccionando la plataforma que prefiera.
- Para que un paquete MSIX se instale en la máquina de un usuario final, debe estar firmado con un certificado que sea de confianza en la máquina. Puedes seleccionar un certificado del almacén de certificados local, seleccionar un archivo de certificado o crear un certificado nuevo. Obtenga información sobre cómo firmar el paquete de la aplicación aquí.
Características de la extensión
La extensión permitirá a los desarrolladores crear paquetes listos para conectar aplicaciones, probar la conexión de aplicaciones localmente o publicar en el grupo de hosts de AVD directamente desde Visual Studio.
Debe elegir la opción adecuada y continuar.
Crear solo una imagen de disco
Esto creará una imagen de disco lista para la conexión de aplicaciones de la aplicación, pero no la publicará en ningún lugar. Se puede usar para transferir o publicar manualmente en otro lugar. Puede ir a la ruta de acceso de la carpeta de salida especificada para acceder a la imagen.
Conexión de aplicaciones local
Esto creará un paquete listo para la conexión de aplicaciones y lo publicará localmente para probar y solucionar problemas.
Le ahorrará el esfuerzo de adjuntarlo al host de AVD para realizar pruebas. Los usuarios pueden instalar la aplicación y expulsar el disco después de las pruebas.
Conexión de aplicaciones de Azure (AVD)
Esto creará un paquete listo para la conexión de aplicaciones y lo publicará en el grupo de hosts de AVD.
- Para publicar su paquete de conexión de aplicaciones en Azure Virtual Desktop, seleccione la opción Azure.
Nota:
Esta extensión solo permite publicar en recursos de Azure existentes.
- Seleccione los valores siguientes:
- ID de suscripción: elija la suscripción de Azure que desee usar para la implementación.
- Grupo de recursos: seleccione un nombre de grupo existente en el menú desplegable.
- Cuenta de almacenamiento: seleccione el nombre de la cuenta de almacenamiento que tiene el recurso compartido de archivos implementado.
- Recurso compartido de archivos: seleccione recurso compartido de archivos en la implementación de Azure Virtual Desktop donde se almacenará el paquete.
- Grupo de aplicaciones: seleccione el grupo de aplicaciones en el que quiera publicar las aplicaciones.
- Área de trabajo: seleccione el nombre del área de trabajo a la que desea asignar un grupo de aplicaciones.
- Grupo de hosts: seleccione el nombre del grupo de hosts para el grupo de aplicaciones.
- Haga clic en Publicar para publicar su paquete en la implementación de Azure virtual Desktop superior.
Preguntas frecuentes (FAQ)
P1: ¿Por qué falló el almacenamiento provisional en la conexión de aplicaciones local, mostrando errores?
R1: El motivo principal del error de almacenamiento provisional es la ausencia de dependencias necesarias para MSIX en la máquina. Para solucionar esto, examine cuidadosamente los registros de conexión de aplicaciones que proporcionan información detallada sobre las dependencias específicas necesarias para continuar.
P2: Azure Virtual Desktop: comprobación satisfactoria de la conexión de aplicaciones, pero la aplicación no se inicia igualmente
R2: El problema principal aquí es la ausencia de dependencias MSIX en la máquina virtual de Azure. Para resolverlo, identifique las dependencias necesarias de los registros de conexión de aplicaciones y asegúrese de que están instaladas en la(s) máquina(s) virtual(es) designada(s).
P3: Error: ¿disco virtual no encontrado en <la ubicación para compartir archivos>?
R3: Este error suele producirse cuando el recurso compartido de archivos está desconectado de la(s) máquina(s) virtual(es). Para corregirlo, inicie sesión en la máquina virtual asignada y asegúrese de que el recurso compartido de archivos correspondiente esté conectado a la máquina virtual. Después, debería poder montar y desmontar archivos VHDx correctamente.
P4: He iniciado sesión en Visual Studio a través de varias cuentas, ¿cuál se recogerá para la conexión de aplicaciones de AVD?
R4: Para la conexión de aplicaciones AVD, asegúrese de que solo el usuario administrador de AVD haya iniciado sesión en Visual Studio. Elimine cualquier otra cuenta antes de iniciar el menú de extensiones. De forma adicional, vuelva a iniciar sesión en Visual Studio si las credenciales han expirado.
P5: ¿La extensión modifica mi solución?
R5: Sí, la extensión crea la carpeta AppAttachPackages y el archivo appattach.config
en el nivel raíz de la solución. La carpeta AppAttachPackages contiene artefactos MSIX y VHDx, mientras que el archivo appattach.config
contiene metadatos de aplicación cruciales para el proceso de conexión de aplicaciones. Puede ignorar estos artículos de forma segura.
P6: ¿Puedo usar la extensión para volver a publicar el artefacto de la aplicación en AVD?
Actualmente no se admite esta funcionalidad. Sin embargo, puede cambiar a una versión superior e intentar volver a publicar. Tenga en cuenta que esto dará lugar a dos aplicaciones distintas en la aplicación de escritorio remoto. Además, puede marcar la versión anterior como inactiva en la sección Grupo de hosts : > paquetes MSIX a través de Azure Portal.
P7: ¿Cómo puedo desinstalar una aplicación conectada localmente?
R7: Haga clic con el botón derecho en la aplicación en la barra de búsqueda y seleccione Desinstalar. Además, expulse la nueva unidad agregada al PC. Para una eliminación completa, inicie PowerShell en modo de administrador y ejecute el siguiente comando:
$msixPackageFullName = <msixPackageFullName>
Remove-AppxPackage $msixPackageFullName -PreserveRoamableApplicationData
P8: Mi proceso está agotando el tiempo de espera durante la ejecución.
R8: En appattach.config
, localice la etiqueta <ProcessTimeOut> y aumente el valor de tiempo de expiración. El valor predeterminado es 600 segundos (10 minutos) y puede ajustarlo en función de sus requisitos.