Mettre à jour l’architecture d’application d’Arm32 vers Arm64

Ce guide décrit les étapes recommandées pour modifier une application existante avec prise en charge de l’architecture de plateforme Arm 32 bits sur l’architecture arm 64 bits plus mise à jour en ajoutant la configuration nécessaire à l’aide de Visual Studio. Cette mise à jour aidera votre application à s’exécuter sur les derniers appareils Windows sur Arm qui utilisent des processeurs ARM (ARM64/AArch64) 64 bits.

Cette rubrique est pertinente pour les applications UWP qui n’ont pas de cible ARM64. Les anciens modèles de projet UWP ont généré une cible ARM32 (ou AArch32), mais n’ont pas inclus la prise en charge d’ARM64 (AArch64).

Pour vérifier la plateforme de solutions actuelle pour votre application afin de voir si ARM64 est présent, ouvrez le code de votre projet d’application dans Visual Studio et dans le menu déroulant « Plateformes de solutions » dans la barre d’outils Standard, sélectionnez Configuration Manager... (également disponible dans le menu Build) où vous pourrez afficher la liste des plateformes de solutions et vérifier si ARM64 est présent.

Remarque

Les appareils Windows qui s’exécutent sur un processeur Arm (par exemple, les processeurs Snap xeon de Soc) ne prennent plus en charge AArch32 (Arm32). Ce changement affecte plateforme Windows universelle applications qui ciblent actuellement AArch32 (Arm32). La prise en charge des versions Arm 32 bits des applications sera supprimée dans une prochaine version de Windows 11.. Les fichiers binaires système pour la prise en charge d’ARM32 (présents dans le dossier sysarm32 ) seront également supprimés. Après cette modification, pour le petit nombre d’applications affectées, les fonctionnalités d’application peuvent être différentes et vous remarquerez peut-être une différence de performances. Par conséquent, nous vous recommandons de mettre à jour vos plateformes ciblées vers AArch64 (Arm64), qui est prise en charge sur tous les appareils Windows sur Arm, dès que possible afin de vous assurer que vos clients peuvent continuer à bénéficier de la meilleure expérience possible. Suivez les instructions de cette page pour mettre à jour vos applications vers AArch64 (Arm64).

Ajouter une configuration Arm64 à votre projet

Pour ajouter une plateforme de solution ARM64 au code de votre projet d’application existant :

  1. Ouvrez votre solution (code de projet) dans Visual Studio (Visual Studio 2017 version 15.9 ou ultérieure est nécessaire).
  2. Dans le menu déroulant « Plateformes de solution » de la barre d’outils Standard (ou dans le menu « Générer »), sélectionnez Gestionnaire de configuration...
  3. Ouvrez le menu déroulant « Plateforme de solution active » et sélectionnez nouveau...>.<
  4. Dans le menu déroulant « Tapez ou sélectionnez la nouvelle plateforme », sélectionnez ARM64 et vérifiez que la valeur « Copier les paramètres à partir de » est définie sur ARM avec la case à cocher « Créer des plateformes de projet » activée, puis sélectionnez OK.

Créer votre solution Arm64

Une fois que vous avez ajouté la plateforme de solution Arm64 à votre projet ou solution existant, si vous souhaitez confirmer que la version Arm64 de votre application est générée correctement, fermez la fenêtre « Plateforme de solution active » et remplacez le paramètre de génération de Debug par Version. Dans le menu déroulant « Générer », sélectionnez Régénérer la solution et attendez que le projet soit régénéré. Vous devez recevoir une sortie « Reconstruire tout réussi ». Si ce n’est pas le cas, consultez la section Résolution des problèmes à la suite.

(Facultatif) : Vérifiez que votre fichier binaire d’application est maintenant généré pour l’architecture Arm64 en ouvrant votre répertoire de projet dans PowerShell (cliquez avec le bouton droit sur votre projet d’application dans Visual Studio Explorateur de solutions, puis sélectionnez Ouvrir dans terminal). Modifiez les répertoires afin que le nouveau bin\ARM64\Release répertoire de votre projet soit sélectionné. Entrez la commande : dumpbin .\<appname>.exe (en remplaçant <appname> par le nom de votre application). Entrez ensuite la commande : dumpbin /headers .\<appname>.exe. Faites défiler vers le haut les résultats de sortie de votre terminal, recherchez la FILE HEADER VALUES section et confirmez que la première ligne est AA64 machine (ARM64).

Publier votre application mise à jour dans le Microsoft Store

Une fois que vous avez créé une version Arm64 de votre application en suivant les étapes de configuration ci-dessus, vous pouvez mettre à jour votre package d’application existant dans le Microsoft Store en visitant votre tableau de bord espace partenaires et en ajoutant les fichiers binaires ARM64 nouvellement créés à la soumission. (Il s’agit d’une option permettant également de supprimer les fichiers binaires ARM32 précédents).

(éventuellement) en supprimant les fichiers binaires Arm32 précédents. Pour plus d’informations sur les options, consultez Publier votre application dans le Microsoft Store.

Dépannage

Si vous rencontrez des problèmes lors du portage de votre application Arm32 vers Arm64, voici quelques solutions courantes.

Une dépendance non compilée pour ARM64 entrave la réussite de la génération

Si vous êtes dans l’impossibilité de générer en raison d’une dépendance, qu’elle soit interne, tierce ou issue d’une bibliothèque open source, vous devez soit trouver un moyen de mettre à jour cette dépendance pour prendre en charge l’architecture ARM64, soit la supprimer.

  • Pour les dépendances internes, nous vous recommandons de recréer la dépendance pour la prise en charge d’ARM64.

  • Pour les dépendances tierces, nous vous recommandons de soumettre une demande au mainteneur en vue de recréer la dépendance en question avec une prise en charge ARM64.

  • Pour code source ouvert dépendances, nous vous recommandons de vérifier d’abord vcpkg pour voir si une version plus récente de la dépendance qui inclut la prise en charge d’ARM64 existe que vous pouvez mettre à jour. S’il n’existe pas de mise à jour, envisagez de contribuer vous-même à l’ajout de la prise en charge d’ARM64 au package. De nombreux mainteneurs open source vous seraient reconnaissants pour cette contribution.

  • La dernière option serait de supprimer et/ou de remplacer la dépendance dans le projet de votre application.

Vous avez besoin d’aide ? Faites appel à notre service App Assure

En savoir plus sur l’assistance de compatibilité De l’assurance des applications pour faciliter le portage de votre application ou pilote Windows vers Arm64. Pour vous inscrire et vous connecter à App Assure, visitez aka.ms/AppAssureRequest ou envoyez un e-mail pour achelp@microsoft.com envoyer votre demande de support de compatibilité Windows on Arm.