Notas de la versión del canal estable para el SDK de Aplicaciones para Windows 0.8

El canal estable proporciona versiones del SDK de aplicaciones de Windows compatibles con el uso de aplicaciones en entornos de producción. Las aplicaciones que usan la versión estable del SDK de aplicaciones de Windows también se pueden publicar en Microsoft Store.

Vínculos importantes:

Versión del canal estable más reciente:

Descargas para el SDK de Aplicaciones para Windows

Nota:

Las extensiones de Visual Studio (VSIX) del SDK de Aplicaciones para Windows ya no se distribuyen como descarga independiente. Están disponibles en Visual Studio Marketplace dentro de Visual Studio.

Versión 0.8

La versión más reciente disponible del linaje 0.8.x del canal estable del SDK de aplicaciones para Windows es la versión 0.8.12.

Nota

Windows App SDK se conocía previamente por el nombre de código Project Reunion. Algunos recursos del SDK de la versión 0.8 y anteriores siguen usando el nombre de código. Algunas áreas de la documentación todavía usan Project Reunion al hacer referencia a un recurso existente o a una versión anterior especificada.

Versión 0.8.12

Se trata de una versión de mantenimiento del SDK de aplicaciones de Windows que incluye correcciones de errores críticos de la versión 0.8.0.

Nota

Para los desarrolladores de C#, se requiere una de las siguientes versiones del SDK de .NET: 5.0.213, 5.0.407, 6.0.104, 6.0.202 (o posterior). Para actualizar la versión del SDK de .NET, visite Descargas de .NET o actualice a la versión más reciente de Visual Studio. Sin la versión necesaria del SDK de .NET, al actualizar el paquete NuGet obtendrá un error parecido a este: "Esta versión de WindowsAppSDK requiere la versión 1.6 o posterior de WinRT.Runtime.dll".

Correcciones de errores (0.8.12)

  • Se ha corregido un problema por el que las aplicaciones con SwapChainPanel o WebView2 se bloqueaban de forma impredecible debido a una infracción de acceso.

Versión 0.8.11

Se trata de una versión de mantenimiento del SDK de aplicaciones de Windows que incluye correcciones de errores críticos de la versión 0.8.0.

Nota

Para los desarrolladores de C#, se requiere una de las siguientes versiones del SDK de .NET: 5.0.213, 5.0.407, 6.0.104, 6.0.202 (o posterior). Para actualizar la versión del SDK de .NET, visite Descargas de .NET o actualice a la versión más reciente de Visual Studio. Sin la versión necesaria del SDK de .NET, al actualizar el paquete NuGet obtendrá un error parecido a este: "Esta versión de WindowsAppSDK requiere la versión 1.6 o posterior de WinRT.Runtime.dll".

Correcciones de errores (0.8.11)

  • Se ha corregido la regresión que provocaba que el evento de foco perdido se activara al seleccionar texto mediante el mouse.

Versión 0.8.10

Se trata de una versión de mantenimiento del SDK de aplicaciones de Windows que incluye correcciones de errores críticos de la versión 0.8.0.

Nota

Para los desarrolladores de C#, se requiere una de las siguientes versiones del SDK de .NET: 5.0.213, 5.0.407, 6.0.104, 6.0.202 (o posterior). Para actualizar la versión del SDK de .NET, visite Descargas de .NET o actualice a la versión más reciente de Visual Studio. Sin la versión necesaria del SDK de .NET, al actualizar el paquete NuGet obtendrá un error parecido a este: "Esta versión de WindowsAppSDK requiere la versión 1.6 o posterior de WinRT.Runtime.dll".

Correcciones de errores (0.8.10)

  • Se han corregido problemas que provocaban que las aplicaciones algunas veces se bloquearan durante una operación de arrastrar y colocar.

Nota

El SDK de aplicaciones para Windows 0.8.9 no se publicó. La versión publicada directamente después de la 0.8.8 es la 0.8.10.

Versión 0.8.8

Se trata de una versión de mantenimiento del SDK de aplicaciones de Windows que incluye correcciones de errores críticos de la versión 0.8.0.

Nota

Para los desarrolladores de C#, se requiere como mínimo una de las siguientes versiones del SDK de .NET: 6.0.202, 6.0.104, 5.0.407, 5.0.213. Para actualizar la versión del SDK de .NET, vaya a Descargas de .NET o actualice a la versión más reciente de Visual Studio. Sin la versión necesaria del SDK de .NET, al actualizar el paquete NuGet obtendrá un error parecido a este: "Esta versión de WindowsAppSDK requiere la versión 1.6 o posterior de WinRT.Runtime.dll".

Correcciones de errores (0.8.8)

  • Se han corregido problemas de entrada táctil en TextBox con respecto al teclado en pantalla y la interacción general. Estos problemas también afectaron a los métodos abreviados de teclado. Para más información, consulte el problema 6291 en GitHub.
  • Se ha corregido un problema por el que una ventana de la aplicación a veces se mostraba inactiva cuando estaba activa.
  • Se ha corregido el problema de rendimiento causado por la ejecución de UIA (Automatización de la interfaz de usuario) en procesos externos.
  • Se ha corregido un problema de estabilidad de la aplicación con la entrada del lápiz.
  • Se ha corregido un problema por el que la representación de iconos png en un menú se retrasaba considerablemente debido a UIA.

Versión 0.8.7

Se trata de una versión de mantenimiento del SDK de aplicaciones para Windows que incluye varias actualizaciones de rendimiento para aplicaciones de C#/.NET. Para actualizar a esta versión, deberá hacer referencia a la versión más reciente del paquete de Windows SDK. Para ello, agregue la propiedad <WindowsSdkPackageVersion>10.0.<sdk_version>.24</WindowsSdkPackageVersion> al archivo .csproj con la versión del SDK a la que se dirige la aplicación desde la propiedad TargetFramework. Por ejemplo:

<Project Sdk="Microsoft.NET.Sdk">
   <PropertyGroup>
       <OutputType>WinExe</OutputType>
       <TargetFramework>net6.0-windows10.0.19041.0</TargetFramework>
       <TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
       <WindowsSdkPackageVersion>10.0.19041.24</WindowsSdkPackageVersion>
   <PropertyGroup>
   ...

Esta versión de la proyección de Windows SDK estará disponible en una próxima versión de mantenimiento de .NET 6. Después de que la actualización del SDK de .NET esté disponible, debe quitar la propiedad <WindowsSdkPackageVersion> del archivo del proyecto.

Si no establece esta propiedad, verá un error similar al siguiente: "Error: This version of Project Reunion requires WinRT.Runtime.dll version 1.6 or greater."

Versión 0.8.6

Se trata de una versión de mantenimiento del SDK de aplicaciones para Windows que incluye varias mejoras de rendimiento para aplicaciones de C#/.NET para la versión 0.8.0.

Para actualizar a esta versión del SDK de aplicaciones para Windows, deberá tener instalada la actualización de diciembre del SDK de .NET más reciente (consulte Descargar .NET y .NET 5 llegarán al final del soporte técnico el 10 de mayo de 2022). Si no tiene instalada la versión mínima necesaria del SDK de .NET, verá un error como "Error: This version of Project Reunion requires WinRT.Runtime.dll version 1.4 or greater."

Correcciones de errores (0.8.6)

Para obtener una lista detallada de las mejoras de rendimiento, consulte las notas de la versión de C#/WinRT 1.4.1.

Versión 0.8.5

Se trata de una versión de mantenimiento del SDK de aplicaciones para Windows que incluye más correcciones de errores críticos de la versión 0.8.0.

Correcciones de errores (0.8.5)

  • Se ha corregido un problema que provocaba que las aplicaciones WinUI que usaban la entrada de puntero se bloquearan.
  • Se ha corregido un problema que provocaba que los botones de la barra de título (Minimizar, Maximizar y Cerrar) no tuvieran esquinas redondeadas en Windows 11.
  • Se ha corregido un problema que provocaba que las opciones de diseño de cambio de tamaño no aparecieran al mantener el puntero sobre el botón Maximizar o Restaurar en Windows 11.
  • Se ha corregido un problema que provocaba una excepción de bloqueo en la creación de un objeto PointCollection. Para más información, consulte el problema 971 en GitHub.

Las limitaciones y los problemas conocidos de la versión 0.8 también se aplican a la versión 0.8.5, a menos que se marque lo contrario en la sección siguiente.

Versión 0.8.4

Se trata de una versión de mantenimiento del SDK de aplicaciones para Windows que incluye más correcciones de errores críticos de la versión 0.8.0.

Correcciones de errores (0.8.4)

  • Corrige las barras de título personalizadas para que ContentDialog no lo cubra y los botones de la barra de título se redondean.
  • Corrección de un bloqueo en el procesamiento de imágenes cuando se cambia la escala de pantalla.
  • Corrige errores de recorte en los que la UI desaparece o se recorta incorrectamente

Las limitaciones y los problemas conocidos de la versión 0.8 también se aplican a la versión 0.8.4, a menos que se marque lo contrario en la sección siguiente.

Versión 0.8.3

Se trata de una versión de mantenimiento del SDK de aplicaciones para Windows que incluye más correcciones de errores críticos de la versión 0.8.0.

Correcciones de errores (0.8.3)

El foco del teclado se perdía cuando se minimizaba una ventana y luego se restauraba, lo que requería un clic del mouse para restaurar el foco.

Las limitaciones y los problemas conocidos de la versión 0.8 también se aplican a la versión 0.8.3, a menos que se marque lo contrario en la sección siguiente.

Versión 0.8.2

Se trata de una versión de mantenimiento del SDK de aplicaciones para Windows que incluye más correcciones de errores críticos de la versión 0.8.0.

Correcciones de errores (0.8.2)

  • Ahora se admiten el SDK de aplicaciones para Windows y WinUI 3 en Visual Studio 2022 Preview 2 y versiones posteriores.
  • En el caso de las aplicaciones .NET, puede recibir el siguiente error al pasar una matriz de enumeraciones: Object contains non-primitive or non-blittable data.
  • La escritura mediante el panel de escritura a mano dentro de un cuadro de texto provoca un bloqueo
  • Los iconos o imágenes siempre se cargan en su valor de escala del 100 % en lugar de basarse en el valor de escala del monitor
  • La colección de elementos no utilizados de EventSource<T> provoca un error posterior al cancelar la suscripción a los controladores (consulte Problema de GitHub para obtener más detalles)
  • Corrección de seguridad: consulte CVE-2021-34533 para obtener más detalles.
  • SwapChainPanel.CompositionScaleChanged a veces devuelve valores de CompositionScale incorrectos después de cambiar la escala de pantalla

Las limitaciones y los problemas conocidos de la versión 0.8 también se aplican a la versión 0.8.2, a menos que se marque lo contrario en la sección siguiente.

Versión 0.8.1

Se trata de una versión de mantenimiento del SDK de aplicaciones para Windows que incluye algunas correcciones de errores críticos de la versión 0.8.0.

Correcciones de errores (0.8.1)

  • El SDK de aplicaciones para Windows no se puede ejecutar en la compilación más reciente de Windows Insider
  • Bloqueo en EditableComboBox al escribir un valor que no aparece en la lista desplegable
  • WebView2 no permite al usuario saltar mediante tabulación una vez que se ha recibido el foco
  • Espacio de nombres Windows.Foundation.Metadata.DefaultOverload completo en el código generado por WinUI para evitar la ambigüedad del espacio de nombres
    • Esto corrige el error 5108.
  • Corrección de seguridad: consulte CVE-2021-34489 para obtener más detalles.

Las limitaciones y los problemas conocidos de la versión 0.8 también se aplican a la versión 0.8.1, a menos que se marque lo contrario en la sección siguiente.

Versión 0.8.0 estable

Nuevas características y actualizaciones

Esta versión admite todas las características de canal estables.

WinUI 3:

Esta versión incluye muchas correcciones de errores y una estabilización mejorada en WinUI 3. Estos son todos los cambios nuevos en WinUI 3 desde el lanzamiento de WinUI 3 - Project Reunion 0.5:

  • El control Pivot se ha vuelto a agregar y ahora se puede usar en cualquier aplicación WinUI 3.

  • Todas las correcciones de errores de Project Reunion v0.5.5, v0.5.6 y v0.5.7 se incluyen con esta versión.

  • Nuevas correcciones de errores, entre las que se incluyen:

    • El clic con el botón derecho del mouse en TextBox bloquea la aplicación
    • El elemento NavigationView provoca un bloqueo en UWP, Reunion 0.5 versión preliminar
    • El elemento ProgressBar no muestra la diferencia entre las opciones En pausa y Error
    • Bloqueo en RichEditBox al copiar, pegar o cambiar el estilo de texto
    • Los botones de la leyenda de la ventana pueden estar mal colocados cuando SetTitleBar no se ha establecido o es NULL

    Para obtener la lista completa de errores corregidos en esta versión, consulte nuestro repositorio de GitHub.

  • La API ColorHelper.ToDisplayName ya no está disponible.

  • Se han quitado los siguientes tipos:

    • Microsoft.Graphics.IGeometrySource2D
    • Microsoft.Graphics.IGeometrySource2DInterop

    Utilice Windows.Graphics.IGeometrySource2D y Windows.Graphics.IGeometrySource2DInterop en su lugar.

  • Todos los tipos del Microsoft.System espacio de nombres se han movido al espacio de nombres Microsoft.UI.Dispatching, incluida la clase DispatcherQueue.

  • La propiedad AcrylicBrush.BackgroundSource se ha quitado, ya que HostBackdrop no se admite como BackgroundSource en WinUI 3.

Para obtener más información sobre WinUI, consulte WinUI.

Para ver los controles y las características de WinUI 3 en acción, puede clonar y compilar la aplicación WinUI 3 Gallery desde GitHub o descargarla desde Microsoft Store.

Para comenzar a desarrollar con WinUI, consulte los siguientes artículos:

DWriteCore:

Esta versión de DWriteCore incluye las siguientes características nuevas y actualizadas. DWriteCore se presenta y se describe en la introducción a DWriteCore.

Nota

DWriteCoreCreateFactory es funcionalmente igual que la función DWriteCreateFactory exportada por la versión del sistema de DirectWrite. La función DWriteCore tiene un nombre diferente para evitar ambigüedad en caso de que se vincule DWriteCore.lib y DWrite.lib.

Para obtener referencia de API DWriteCore y DirectWrite, consulte Referencia de API DWriteCore y Referencia de API DirectWrite.

MRTCore:

  • La Acción de compilación para los recursos se establece automáticamente al agregar el recurso al proyecto, lo que reduce la necesidad de la configuración manual del proyecto.

Limitaciones

  • Esta versión no se admite actualmente en el Canal de desarrolladores del programa Windows Insider. Esto se ha corregido en la versión 0.8.1.

  • Aplicaciones de escritorio (escritorio de C# o C++): esta versión solo se admite para su uso en aplicaciones de escritorio (C++ o C#) empaquetadas mediante MSIX. Para usar el SDK de aplicaciones para Windows en aplicaciones de escritorio sin empaquetar, debe usar el canal de versión experimental.

Importante

Si está trabajando en una aplicación para UWP, consulte Migración de UWP al SDK de Aplicaciones para Windows.

Problemas conocidos

  • Las herramientas de WinUI 3, como Live Visual Tree, Live Property Explorer y Recarga activa, en la versión 0.8 y versiones posteriores requieren Visual Studio 2019 16.11 Preview 3 y versiones posteriores.

  • Actualmente, las aplicaciones que usan WinUI 3 y el SDK 0.8 de aplicaciones para Windows no pueden usar bibliotecas de clases que usan Project Reunion 0.5. Actualice las bibliotecas de clases para usar el SDK de aplicaciones para Windows 0.8.

  • Las aplicaciones .NET deben tener como destino la compilación 18362 o posterior: su TFM se debe establecer en net6.0-windows10.0.18362 o posterior, y el proyecto de empaquetado debe establecerse en 18362 o posterior. Para más información, consulte el problema 921 de GitHub.

  • Es posible que encuentre un bloqueo al cambiar con frecuencia entre los modos claro y oscuro.

  • En el caso de las aplicaciones .NET, puede recibir el siguiente error al pasar una matriz de enumeraciones: Object contains non-primitive or non-blittable data. Se ha corregido en la versión 0.8.2.

  • En el caso de las aplicaciones .NET, actualmente no hay ninguna manera de cancelar la indexación de una imagen como un recurso de aplicación mediante la UI de Visual Studio. Para solucionarlo, agregue Directory.Build.targets (consulte Personalizar una compilación: Visual Studio para obtener instrucciones) al proyecto y quite las imágenes como se indica a continuación:

    • Para quitar imágenes específicas (tenga en cuenta que se necesita la ruta de acceso relativa):

      <Project>
      <ItemGroup>
          <Content Remove="..\Bitmap1.bmp" />
      </ItemGroup>
      </Project>
      
      • Para quitar imágenes basadas en metadatos:
      <Project>
      <ItemGroup>
          <Content Remove="@(None->WithMetadataValue('Pack','true'))" />
      </ItemGroup>
      </Project>
      

      Hay prevista una corrección para este problema para una próxima versión: en ese momento, ya no será necesario llevar a cabo las soluciones alternativas anteriores.