Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En esta sección de la documentación se explica cómo mover una aplicación de Plataforma universal de Windows (UWP) de C# o C++/WinRT a la SDK de Aplicaciones para Windows y WinUI 3. La orientación incluye estrategia de migración, comparaciones de características y guías paso a paso por área de características.
Para migrar la aplicación de UWP a la SDK de Aplicaciones para Windows, es probable que el código de la interfaz de usuario necesite solo unos pocos cambios en el espacio de nombres, mientras que gran parte del código de la plataforma puede permanecer igual. Tendrá que ajustar parte del código debido a las diferencias entre las aplicaciones UWP y las aplicaciones de escritorio. Para la mayoría de las aplicaciones (en función del tamaño del código base), la migración tarda en el orden de los días en lugar de semanas.
Nota:
La aplicación para UWP existente seguirá funcionando según lo previsto. Sin embargo, para aprovechar las ventajas de las características modernas en WinUI 3 y el SDK de Aplicaciones para Windows se recomienda migrar la aplicación.
Sugerencia
También puede usar herramientas de inteligencia artificial para acelerar la migración. Consulta Migrar una aplicación para UWP a WinUI 3 con asistencia de IA para obtener una tabla de sustitución de API de referencia rápida y un mensaje de inicio que puedes usar con GitHub Copilot.
Estos son los pasos generales para migrar manualmente. Consulta también la herramienta asistente de actualización de .NET si vas a migrar una aplicación para UWP de C#.
- Cree un nuevo proyecto de escritorio empaquetado de WinUI (consulte Crear su primer proyecto WinUI). Esto podría integrarse en la solución existente de el proyecto.
- Copie el código de XAML/UI. En muchos casos, simplemente puede cambiar los espacios de nombres (por ejemplo, Windows. UI.* a Microsoft. UI.*).
- Copie el código lógico de la aplicación. Algunas API necesitan ajustes, como Popup, Picker y SecondaryTile.
Los temas de la tabla siguiente describen y muestran cómo migrar manualmente la aplicación para UWP a la SDK de Aplicaciones para Windows.
Important
Antes de empezar, lea Lo que se admite al migrar de UWP a WinUI. En este tema se enumeran las características que aún no se admiten en WinUI 3 y el SDK de Aplicaciones para Windows. Si la aplicación depende de cualquiera de esas características, considere la posibilidad de posponer la migración hasta que el soporte técnico esté disponible.
Nota:
Si el código fuente de tu aplicación UWP está escrito en C++/CX, considera consultar Cambiar a C++/WinRT desde C++/CX.
Migración mediante la herramienta asistente para actualización de .NET
Como paso adicional para ayudarte a migrar tus aplicaciones para UWP a la SDK de Aplicaciones para Windows y WinUI, hemos aprovechado el Asistente para actualizaciones de .NET, agregando compatibilidad para migrar aplicaciones para UWP de C#. La compatibilidad con UWP automatiza gran parte del proceso de migración. Para obtener más información, consulta el tema Migrate de UWP al SDK de Aplicaciones para Windows con el Asistente para actualizaciones de .NET.
Ventajas de la contenedorización
Al realizar la transición a la SDK de Aplicaciones para Windows, las aplicaciones para UWP podrían perder las ventajas inherentes de la contenedorización de su plataforma original. Sin embargo, esas ventajas se pueden restaurar mediante el aislamiento de aplicaciones Win32, una nueva característica de seguridad que mejora la protección al aislar las aplicaciones dentro de un entorno de espacio aislado. Este enfoque ofrece seguridad adicional frente a posibles amenazas con cambios mínimos en el código existente. Para obtener más información y empezar a usar el aislamiento de aplicaciones Win32, consulta Introducción al aislamiento de aplicaciones Win32.
Temas de esta sección
| Tema | Descripción |
|---|---|
| Estrategia de migración general | Consideraciones y estrategias para abordar el proceso de migración y cómo configurar el entorno de desarrollo para la migración. |
| Asignación de características de UWP al SDK de Aplicaciones de Windows | En este tema se comparan las principales áreas de características de los diferentes formularios en los que aparecen en UWP y en el SDK de Aplicaciones para Windows. |
| Elementos compatibles | Obtén información sobre qué características están disponibles actualmente en WinUI Desktop para evaluar si debes intentar migrar tu aplicación para UWP hoy mismo. |
| Mapeo de las API y bibliotecas de UWP en el SDK de Aplicaciones para Windows | En este tema se proporciona una asignación de las API y bibliotecas de UWP a sus equivalentes de SDK de Aplicaciones para Windows. |
| Guías del área de características | Una colección de temas de guía de migración, cada uno de ellos centrado en un área de características específica. |
| Caso práctico 1: PhotoLab (C#) | Este tema es un caso práctico de tomar la aplicación de ejemplo C# UWP PhotoLab y migrarla a la SDK de Aplicaciones para Windows. |
| Caso práctico 2: Photo Editor (C++/WinRT) | Este tema es un caso práctico de tomar la aplicación de ejemplo C++/WinRT UWP Photo Editor y migrarla a la SDK de Aplicaciones para Windows. |
| Guía de migración adicional | Este tema contiene instrucciones de migración adicionales que no se clasifican en un área de características en las guías de área de características. |
| Migra de UWP al SDK de Aplicaciones para Windows con el Asistente para actualización de .NET | El asistente de actualización .NET es una herramienta de línea de comandos que puede ayudar a migrar una aplicación para UWP de C# a una aplicación de WinUI que usa el SDK de Aplicaciones para Windows. |
| Uso de la inteligencia artificial para ayudar a modernizar la aplicación | Cómo usar GitHub Copilot para acelerar la modernización de una aplicación de escritorio existente para SDK de Aplicaciones para Windows y WinUI 3. |