Partage via


S’adapter à la suppression du débogage Windows Arm32 .NET

La prise en charge de .NET pour Windows sur Arm32 a pris fin. La prise en charge du débogage de cette plateforme sera supprimée de Visual Studio 2022 à partir de la mise à jour 17.14. Cet article répertorie les options potentielles pour les clients qui déboguent actuellement le code .NET sur Windows Arm32.

Option 1 : Exécuter du code dans un processus Arm64

Si votre appareil exécute Arm64 Windows ou peut être mis à niveau vers celui-ci, le moyen le plus simple consiste à migrer le processus débogué d’Arm32 vers Arm64. La gestion du commutateur vers Arm64 dépend du type de projet que vous utilisez :

  • Pour les applications de plateforme Windows universelle (UWP), consultez Mettre à jour l’architecture des applications d’Arm32 vers Arm64.
  • Pour les processus qui ont leur propre exécutable natif qui héberge automatiquement le runtime .NET, le projet natif doit être configuré pour cibler Arm64.
  • Si le projet exécutable est un projet .NET, il est probable que quelque chose spécifie la propriété MSBuild RuntimeIdentifier. RuntimeIdentifier doit être mis à jour pour cibler win-arm64 au lieu de win-arm (ou des identifiants d'exécution similaires).

Option 2 : Utiliser une version antérieure de Visual Studio

Visual Studio 17.12 peut être utilisé à partir du canal de maintenance Long-Term (LTSC). Pour plus d’informations, consultez cycle de vie et maintenance des produits Visual Studio.

Option 3 : Démarrer sans débogage

Si vous avez un projet que vous souhaitez toujours exécuter, mais ne nécessite pas de débogage, utilisez Déboguer->Démarrer sans déboguer pour exécuter le projet. Étant donné que le débogueur n’est pas disponible, vous devez diagnostiquer les problèmes en utilisant la journalisation.

Remarque

Cette option n’est pas recommandée, car la prise en charge de .NET pour Windows sur Arm32 a pris fin.

Option 4 : Cible Linux

Le runtime .NET continue de prendre en charge Arm32 Linux. Pour le matériel IoT qui n’est pas capable d’exécuter Arm64 Windows, mais qui est capable d’exécuter Arm32 Linux, le seul chemin pris en charge pour l’exécution de .NET Code sur ce matériel serait de basculer vers Linux.