Remote Debugging

Vous pouvez déboguer une application Visual Studio qui a été déployée sur un autre ordinateur. Pour ce faire, utilisez le débogueur distant Visual Studio.

Pour obtenir des instructions détaillées sur le débogage à distance, consultez ces rubriques.

Scénario Lien
Azure App Service Déboguer à distance ASP.NET Core sur Azure ou, pour Visual Studio Enterprise, le Débogueur de capture instantanée
Azure VM Déboguer à distance ASP.NET sur une machine virtuelle Azure
Azure Service Fabric Déboguer une application Azure Service Fabric
ASP.NET Déboguer à distance ASP.NET Core ou Déboguer à distance ASP.NET
C# ou Visual Basic Déboguer à distance un projet C# ou Visual Basic
C++ Déboguer à distance un projet C++
Docker Attacher à un processus exécuté dans un conteneur Docker
Linux Déboguer .NET Core sur Linux à l’aide de SSH en l’attachant à un processus
Applications de plateforme Windows universelle (UWP) Exécuter des applications UWP sur un ordinateur distant ou Déboguer un package d’application installé

Si vous souhaitez simplement télécharger et installer le débogueur distant et que vous n’avez pas besoin d’instructions supplémentaires pour votre scénario, suivez les étapes décrites dans cet article.

Télécharger et installer les outils de contrôle à distance

Sur l’appareil ou le serveur distant sur lequel vous souhaitez déboguer, plutôt que sur l’ordinateur Visual Studio, téléchargez et installez la version correcte des outils de contrôle à distance à partir des liens du tableau suivant.

  • Téléchargez la mise à jour la plus récente des outils distants pour votre version de Visual Studio. Les versions antérieures des outils distants ne sont pas compatibles avec les versions ultérieures de Visual Studio. (Par exemple, si vous utilisez Visual Studio 2019, téléchargez la dernière mise à jour des outils de contrôle à distance pour Visual Studio 2019. Dans ce scénario, ne téléchargez pas les outils de contrôle à distance pour Visual Studio 2022.)
  • Téléchargez les outils de contrôle à distance dotés de la même architecture que l’ordinateur sur lequel vous les installez. Par exemple, si vous souhaitez déboguer des applications x86 sur un ordinateur distant exécutant un système d’exploitation x64, installez les outils de contrôle à distance x64. Pour déboguer des applications x86, ARM ou x64 sur un système d’exploitation ARM64, installez les outils à distance ARM64.
Version Lien Remarques
Visual Studio 2022 outils de contrôle à distance. Compatible avec toutes les versions de Visual Studio 2022. Téléchargez la version correspondant au système d’exploitation de votre appareil (x86, x64 (AMD64) ou ARM64). Sur les versions plus anciennes de Windows Server, consultez Débloquer le téléchargement de fichier pour obtenir de l’aide sur le téléchargement des outils de contrôle à distance.
Visual Studio 2019 outils de contrôle à distance. Les outils de contrôle à distance pour Visual Studio 2019 sont disponibles à partir de My.VisualStudio.com. Si vous y êtes invité, rejoignez le programme Visual Studio Dev Essentials gratuit ou connectez-vous avec votre ID d’abonnement Visual Studio. Téléchargez la version correspondant au système d’exploitation de votre appareil (x86, x64 (AMD64) ou ARM64). Sur les versions plus anciennes de Windows Server, consultez Débloquer le téléchargement de fichier pour obtenir de l’aide sur le téléchargement des outils de contrôle à distance.
Visual Studio 2017 outils de contrôle à distance. Les outils de contrôle à distance pour Visual Studio 2017 sont disponibles à partir de My.VisualStudio.com. Si vous y êtes invité, rejoignez le programme Visual Studio Dev Essentials gratuit ou connectez-vous avec votre ID d’abonnement Visual Studio. Téléchargez la version correspondant au système d’exploitation de votre appareil (x86, x64 (AMD64) ou ARM64). Sur Windows Server, consultez Débloquer le téléchargement de fichier pour obtenir de l’aide sur le téléchargement des outils de contrôle à distance.
Visual Studio 2015 outils de contrôle à distance. Les outils de contrôle à distance pour Visual Studio 2015 sont disponibles à partir de My.VisualStudio.com. Si vous y êtes invité, rejoignez le programme Visual Studio Dev Essentials gratuit ou connectez-vous avec votre ID d’abonnement Visual Studio. Sur Windows Server, consultez Débloquer le téléchargement de fichier pour obtenir de l’aide sur le téléchargement des outils de contrôle à distance.
Visual Studio 2013 outils de contrôle à distance. Page de téléchargement dans la documentation de Visual Studio 2013
Visual Studio 2012 outils de contrôle à distance. Page de téléchargement dans la documentation de Visual Studio 2012
Version Lien Remarques
Visual Studio 2019 outils de contrôle à distance. Compatible avec toutes les versions de Visual Studio 2019. Téléchargez la version correspondant au système d’exploitation de votre appareil (x86, x64 (AMD64) ou ARM64). Sur Windows Server, consultez Débloquer le téléchargement de fichier pour obtenir de l’aide sur le téléchargement des outils de contrôle à distance. Pour obtenir la version la plus récente des outils de contrôle à distance, ouvrez la documentation de Visual Studio 2022.
Visual Studio 2017 outils de contrôle à distance. Compatible avec toutes les versions de Visual Studio 2017. Téléchargez la version correspondant au système d’exploitation de votre appareil (x86, x64 (AMD64) ou ARM64). Sur Windows Server, consultez Débloquer le téléchargement de fichier pour obtenir de l’aide sur le téléchargement des outils de contrôle à distance.
Visual Studio 2015 outils de contrôle à distance. Les outils de contrôle à distance pour Visual Studio 2015 sont disponibles à partir de My.VisualStudio.com. Si vous y êtes invité, rejoignez le programme Visual Studio Dev Essentials gratuit ou connectez-vous avec votre ID d’abonnement Visual Studio. Sur Windows Server, consultez Débloquer le téléchargement de fichier pour obtenir de l’aide sur le téléchargement des outils de contrôle à distance.
Visual Studio 2013 outils de contrôle à distance. Page de téléchargement dans la documentation de Visual Studio 2013
Visual Studio 2012 outils de contrôle à distance. Page de téléchargement dans la documentation de Visual Studio 2012

Vous pouvez exécuter le débogueur distant en copiant msvsmon.exe sur l’ordinateur distant, au lieu d’installer les outils de contrôle à distance. Toutefois, l’Assistant Configuration Remote Debugger (rdbgwiz.exe) n’est disponible que lorsque vous installez les outils de contrôle à distance. Vous devrez peut-être utiliser l’Assistant pour la configuration si vous souhaitez exécuter le débogueur distant en tant que service. Pour plus d’informations, consultez (Facultatif) Configurer le débogueur distant en tant que service.

Notes

  • Pour déboguer des applications Windows 10 ou version ultérieure sur des appareils ARM, utilisez ARM64, qui est disponible avec la dernière version des outils de contrôle à distance.
  • Pour déboguer des applications Windows 10 sur des appareils Windows RT, utilisez ARM, qui est disponible uniquement dans le téléchargement des outils de contrôle à distance de Visual Studio 2015.
  • Pour déboguer des applications x64 sur un système d’exploitation ARM64, exécutez le fichier msvsmon.exe x64 installé avec les outils à distance ARM64.

Configuration requise

Systèmes d’exploitation pris en charge

L’ordinateur distant doit exécuter l’un des systèmes d’exploitation suivants :

  • Windows 11

  • Windows 10 (pas Phone)

  • Windows 8 ou 8.1 (pas Phone)

  • Windows 7 Service Pack 1

  • Windows Server 2016

  • Windows Server 2012 ou Windows Server 2012 R2

  • Windows Server 2008 Service Pack 2, Windows Server 2008 R2 Service Pack 1

Notes

Windows Phone nécessite une connexion USB pour déboguer (il ne nécessite pas les outils de contrôle à distance).

Configurations matérielles prises en charge

  • Processeur 1,6 GHz minimum

  • 1 Go de RAM (1,5 Go s’il s’agit d’une machine virtuelle)

  • 1 Go d'espace disque disponible

  • Disque dur 5 400 tours/min

  • Carte vidéo DirectX 9 s’exécutant avec une résolution d’affichage de 1024 x 768 ou supérieure

Configuration réseau

L’ordinateur distant et l’ordinateur Visual Studio doivent être connectés sur un réseau, un groupe de travail, un groupe résidentiel ou directement connectés à l’aide d’un câble Ethernet. Le débogage entre deux ordinateurs connectés via un proxy n’est pas pris en charge. Le débogage via une connexion à haute latence ou à faible bande passante, telle qu’Internet à accès commuté, ou via un réseau Internet entre pays/régions n’est pas recommandé et peut échouer ou présenter des lenteurs inacceptables.

(Facultatif) Exécuter le débogueur distant à partir d’un partage de fichiers

Vous trouverez le débogueur distant (msvsmon.exe) sur un ordinateur déjà doté de Visual Studio Community, Professionnel ou Enterprise. Pour certains scénarios, le moyen le plus simple de configurer le débogage à distance consiste à exécuter le débogueur distant (msvsmon.exe) à partir d’un partage de fichiers. Pour connaître les limites d’utilisation, consultez la page d’aide du débogueur distant (Aide > Utilisation dans le débogueur distant).

  1. Recherchez msvsmon.exe dans le répertoire correspondant à votre version de Visual Studio :

    Program Files\Microsoft Visual Studio 17.0\Common7\IDE\Remote Debugger\x64\msvsmon.exe

    Program Files\Microsoft Visual Studio 17.0\Common7\IDE\Remote Debugger\x86\msvsmon.exe

    Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\Remote Debugger\x64\msvsmon.exe

    Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\Remote Debugger\x86\msvsmon.exe

  2. Partagez le dossier Remote Debugger sur l’ordinateur Visual Studio.

  3. Sur l’ordinateur distant, exécutez msvsmon.exe à partir du dossier partagé. Suivez les instructions d’installation.

Conseil

Pour des informations sur l’installation à partir de la ligne de commande et des informations de référence sur la ligne de commande, consultez la page d’aide pour msvsmon.exe en tapant msvsmon.exe /? dans la ligne de commande sur l’ordinateur doté de Visual Studio (ou accédez à Aide > Utilisation dans le débogueur distant).

Configurer le débogueur distant

  1. Sur l’ordinateur distant, recherchez et démarrez le Débogueur distant à partir du menu Démarrer.

    Si vous ne disposez pas d’autorisations d’administration sur l’ordinateur distant, cliquez avec le bouton droit sur l’application Débogueur distant et sélectionnez Exécuter en tant qu’administrateur. Sinon, il suffit de le démarrer normalement.

    Si vous envisagez d’attacher à un processus qui s’exécute en tant qu’administrateur ou qui s’exécute sous un autre compte d’utilisateur (par exemple IIS), cliquez avec le bouton droit sur l’application Débogueur distant et sélectionnez Exécuter en tant qu’administrateur. Pour plus d’informations, consultez Exécuter le débogueur distant en tant qu’administrateur.

  2. La première fois que vous démarrez le débogueur distante (ou avant de l’avoir configuré), l’Assistant Configuration du débogage distant s’affiche.

    Dans la plupart des scénarios, choisissez Suivant jusqu’à ce que vous accédiez à la page configurer le Pare-feu Windows de l’Assistant.

    Capture d’écran montrant la configuration du débogueur distant.

    Capture d’écran montrant la configuration du débogueur distant.

    Si l’API des services Web Windows n’est pas installée, ce qui se produit uniquement sur Windows Server 2008 R2, sélectionnez le bouton Installer.

  3. Sélectionnez au moins un type de réseau sur lequel vous souhaitez utiliser les outils de contrôle à distance. Si les ordinateurs sont connectés à un domaine, vous devez choisir le premier élément. Si les ordinateurs sont connectés via un groupe de travail ou un groupe résidentiel, choisissez le deuxième ou troisième élément, selon les besoins.

    Ensuite, sélectionnez Terminer pour démarrer le débogueur distant.

    Ensuite, sélectionnez Configurer le débogage à distance pour démarrer le débogueur distant.

  4. Une fois la configuration terminée, la fenêtre Débogueur distant s’affiche.

    Capture d’écran montrant la fenêtre du débogueur distant

    Capture d’écran montrant la fenêtre du débogueur distant

    Le débogueur distant est maintenant en attente d’une connexion. Utilisez le nom du serveur et le numéro de port indiqués pour définir la configuration de la connexion à distance dans Visual Studio.

Pour arrêter le débogueur distant, sélectionnezFichier>Quitter. Vous pouvez le redémarrer à partir du menu Démarrer ou de la ligne de commande :

<Remote debugger installation directory>\msvsmon.exe

Configurer le débogueur distant

Vous pouvez modifier certains aspects de la configuration du débogueur distant après l’avoir démarré pour la première fois.

  • Si vous avez besoin d’ajouter des autorisations pour que d’autres utilisateurs se connectent au débogueur distant, choisissez Outils > Autorisations. Vous devez disposer de privilèges d'administrateur pour accorder ou refuser des autorisations.

    Important

    Vous pouvez exécuter le débogueur distant sous un compte d’utilisateur différent de celui que vous utilisez sur l’ordinateur Visual Studio, mais vous devez ajouter l’autre compte d’utilisateur aux autorisations du débogueur distant.

    Vous pouvez également démarrer le débogueur distant à partir de la ligne de commande avec le paramètre /allow <nom_utilisateur> : msvsmon /allow <nom_utilisateur@ordinateur>.

  • Si vous avez besoin de modifier le mode Authentification ou le numéro de port, ou de spécifier une valeur de délai d’attente pour les outils de contrôle à distance : choisissez Outils > Options.

    Pour obtenir la liste des numéros de port utilisés par défaut, consultez Affectations de port au débogueur distant.

    Avertissement

    Vous pouvez choisir d'exécuter les outils de contrôle à distance en mode Aucune authentification, mais ce mode est fortement déconseillé. Il n'existe aucune sécurité du réseau lorsque vous lancez l'exécution dans ce mode. Sélectionnez le mode Aucune authentification uniquement si vous êtes sûr que le réseau n’est pas exposé à des failles de sécurité liées à des programmes malveillants ou du trafic dangereux.

(Facultatif) Configurer le débogueur distant en tant que service

Pour le débogage dans ASP.NET et d’autres environnements serveur, vous devez exécuter le débogueur distant en tant qu’administrateur ou, si vous souhaitez qu’il s’exécute en permanence, exécutez le débogueur distant en tant que service.

Si vous souhaitez configurer le débogueur distant en tant que service, procédez comme suit.

  1. Recherchez l’ Assistant Configuration Remote Debugger (rdbgwiz.exe). (Il s’agit d’une application distincte du débogueur distant.) Il est disponible uniquement lorsque vous installez les outils de contrôle à distance. Il n’est pas installé avec Visual Studio.

  2. Démarrez l’Assistant Configuration. Quand la première page s’affiche, cliquez sur Suivant.

  3. Cochez la case Exécuter le débogueur distant Visual Studio en tant que service.

  4. Ajoutez le nom du compte d’utilisateur et le mot de passe.

    Vous devrez peut-être ajouter le droit d’utilisateur Se connecter en tant que service à ce compte. Recherchez Stratégie de sécurité locale (secpol.msc) dans la page ou la fenêtre Démarrer (ou tapez secpol à une invite de commandes). Quand la fenêtre s’affiche, double-cliquez sur Attribution des droits utilisateur, puis recherchez Ouvrir une session en tant que service dans le volet droit. Double-cliquez dessus. Ajoutez le compte d’utilisateur à la fenêtre Propriétés et cliquez sur OK). Cliquez sur Suivant.

  5. Sélectionnez le type de réseau avec lesquel vous voulez que les outils de contrôle à distance communiquent. Au moins un type de réseau doit être sélectionné. Si les ordinateurs sont connectés à un domaine, vous devez choisir le premier élément. Si les ordinateurs sont connectés à un groupe de travail ou un groupe résidentiel, vous devez choisir le deuxième ou troisième élément. Cliquez sur Suivant.

  6. Si le service peut être démarré, le message suivant s’affiche : L’Assistant Configuration Visual Studio Remote Debugger est terminé. Si le service ne peut pas être démarré, le message suivant s’affiche : Échec de l’Assistant Configuration Débogueur distant Visual Studio. La page fournit également des conseils à suivre pour faire démarrer le service.

  7. Cliquez sur Terminer.

    À ce stade, le débogueur distant s’exécute en tant que service. Vous pouvez vérifier cela en accédant à Panneau de configuration > Services et en recherchant Débogueur distant Visual Studio.

    Vous pouvez arrêter et démarrer le service du débogueur distant à partir de Panneau de configuration > Services.

Configurer le débogage avec des symboles distants

Vous devez pouvoir déboguer votre code avec les symboles que vous générez sur l’ordinateur Visual Studio. Les performances du débogueur distant sont nettement meilleures quand vous utilisez des symboles locaux. Si vous devez utiliser des symboles distants, vous devez indiquer au moniteur de débogage distant de rechercher les symboles sur l’ordinateur distant.

Vous pouvez utiliser le commutateur de ligne de commande msvsmon suivant pour utiliser des symboles distants pour le code managé : Msvsmon /FallbackLoadRemoteManagedPdbs

Pour plus d’informations, reportez-vous à l’aide sur le débogage distant (appuyez sur F1 dans la fenêtre du débogueur distant ou cliquez sur Aide > Utilisation).