Compartir vía


Adaptarse a la retirada de la depuración de .NET en Windows Arm32

La compatibilidad de .NET con Windows en Arm32 ha finalizado. La compatibilidad con la depuración para esta plataforma se quitará de Visual Studio 2022 a partir de la actualización 17.14. En este artículo se enumeran las posibles opciones para los clientes que depuran actualmente código .NET en Windows Arm32.

Opción 1: Ejecución de código en un proceso de Arm64

Si el dispositivo ejecuta Arm64 Windows o se puede actualizar a él, la manera más sencilla es migrar el proceso depurado de Arm32 a Arm64. Cómo gestionar el cambio a Arm64 depende del tipo de proyecto que estés utilizando:

  • Para las aplicaciones para la Plataforma universal de Windows (UWP), consulta Actualización de la arquitectura de aplicaciones de Arm32 a Arm64.
  • En el caso de los procesos que tienen su propio archivo ejecutable nativo que hospeda automáticamente el entorno de ejecución de .NET, el proyecto nativo debe configurarse para tener como destino Arm64.
  • Si el proyecto ejecutable es un proyecto de .NET, es probable que algo especifique la propiedad RuntimeIdentifier MSBuild. RuntimeIdentifier debe actualizarse para apuntar a win-arm64 en lugar de win-arm (o a IDs de tiempo de ejecución similares).

Opción 2: Usar una versión anterior de Visual Studio

Visual Studio 17.12 se puede usar desde el Canal de Servicio Long-Term (LTSC). Para obtener más información, vea ciclo de vida y mantenimiento del producto de Visual Studio.

Opción 3: Iniciar sin depuración

Si tiene un proyecto que todavía desea ejecutar, pero no requiere depuración, use Depurar->Iniciar sin depurar para ejecutar el proyecto. Dado que el depurador no está disponible, tendrías que diagnosticar cualquier problema utilizando registros de logs.

Nota

Esta opción no se recomienda, ya que ha finalizado la compatibilidad de .NET con Windows en Arm32.

Opción 4: Seleccionar Linux

El entorno de ejecución de .NET sigue admitiendo Arm32 Linux. Para el hardware de IoT que no es capaz de ejecutar Arm64 Windows, pero es capaz de ejecutar Arm32 Linux, la única ruta de acceso admitida para ejecutar código .NET en ese hardware sería cambiar a Linux.