Déboguer à distance ASP.NET sur un ordinateur distant IIS

Pour déboguer une application ASP.NET qui a été déployée sur IIS, installez et exécutez les outils distants sur l'ordinateur où vous avez déployé votre application, puis attachez-la à votre application en cours d'exécution à partir de Visual Studio.

Remote debugger components

Ce guide explique comment mettre en place et configurer une application Visual Studio ASP.NET MVC 4.8, la déployer sur IIS et attacher le débogueur à distance à partir de Visual Studio.

Notes

Pour déboguer ASP.NET Core à distance, consultez Déboguer ASP.NET Core à distance sur un ordinateur IIS. Pour Azure App Service, consultez Déboguer à distance ASP.NET Core sur Azure ou, pour Visual Studio Enterprise, utilisez le Débogueur de capture instantanée (.NET 4.6.1 requis).

Prérequis

Visual Studio 2019 ou une version ultérieure est nécessaire pour suivre les étapes décrites dans cet article.

Ces procédures ont été testées sur ces configurations de serveur :

  • Windows Server 2022 et IIS 10
  • Windows Server 2012 R2 et IIS 8 (pour Windows Server 2008 R2, les étapes du serveur sont différentes)

Configuration requise pour le réseau

Le débogueur distant est pris en charge sur Windows Server à partir de Windows Server 2008 Service Pack 2. Pour obtenir la liste complète des exigences, consultez Exigences.

Notes

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.

Application déjà en cours d’exécution dans IIS ?

Cet article inclut les étapes de la mise en place d'une configuration IIS de base sur un serveur Windows et du déploiement de l'application à partir de Visual Studio. Ces étapes sont incluses pour s'assurer que les composants nécessaires sont installés sur le serveur, que l'application peut fonctionner correctement, et que vous êtes prêt à déboguer à distance.

  • Si votre application est exécutée dans IIS et que vous souhaitez simplement télécharger le débogueur à distance et commencer le débogage, accédez à Télécharger et installer les outils à distance sur Windows Server.

  • Si vous souhaitez obtenir de l’aide pour vous assurer que votre application est configurée, déployée et fonctionne correctement dans IIS afin que vous puissiez la déboguer, suivez toutes les étapes décrites dans cette rubrique.

Créez l’application ASP.NET 4.8 sur l’ordinateur Visual Studio

  1. Créez une application ASP.NET MVC.

    Dans Visual Studio, choisissez Fichier>Fenêtre Démarrer pour ouvrir la fenêtre Démarrer, puis choisissez Créer un nouveau projet. Dans la zone de recherche, tapez asp.net framework, puis choisissez ASP.NET application web (.NET Framework). Dans la boîte de dialogue qui s’affiche, nommez le projet MyASPApp, choisissez ASP.NET Framework 4.8, puis choisissez Créer.

    Sélectionnez MVC et choisissez Créer.

  2. Ouvrez le fichier HomeController.cs dans le dossier Controllers et définissez un point d’arrêt dans l’instruction return View; dans la méthode Privacy.

    Dans les modèles plus anciens, ouvrez le fichier Privacy.cshtml.cs et définissez un point d’arrêt dans la méthode OnGet.

Installer et configurer IIS sur Windows Server

Ces étapes montrent uniquement une configuration IIS de base. Pour plus d’informations détaillées ou pour une installation sur un ordinateur Windows Desktop, consultez Publication sur IIS ou IIS 8.0 avec ASP.NET 3.5 et ASP.NET 4.5.

Pour les systèmes d’exploitation Windows Server, utilisez l’Assistant Ajout de rôles et de fonctionnalités par le biais du lien Gérer ou du lien Tableau de bord dans Gestionnaire de serveur. À l’étape Rôles de serveurs, cochez la case Serveur Web (IIS).

Screenshot showing the Web Server IIS role selected in the Select server roles step.

(Windows Server 2022) Dans la boîte de dialogue qui s’affiche, choisissez Ajouter des fonctionnalités pour ajouter la console de gestion IIS.

À l’étape Services de rôle, sélectionnez les services de rôle IIS souhaités ou acceptez les services de rôle par défaut. Si vous souhaitez activer le déploiement à l'aide des paramètres de publication et de Web Deploy, assurez-vous que les fonctionnalités suivantes sont sélectionnées :

  • Scripts et outils de gestion d’IIS
  • Service d'administration
  • Console de gestion IIS

Screenshot showing IIS Management scripts and tools selected.

Validez les étapes de confirmation pour installer les services et le rôle de serveur web. Un redémarrage du serveur/d’IIS n’est pas nécessaire après l’installation du rôle Serveur Web (IIS).

Mettez à jour les paramètres de sécurité du navigateur sur Windows Server

Si vous utilisez une version plus ancienne de Windows Server, il est possible que vous deviez ajouter certains domaines en tant que sites de confiance pour pouvoir télécharger certains composants du serveur web. Ajoutez les sites fiables en allant dans Options Internet > Sécurité > Sites fiables > Sites. Ajoutez les domaines suivants.

  • microsoft.com
  • go.microsoft.com
  • download.microsoft.com
  • iis.net

Lorsque vous téléchargez le logiciel, il se peut que l’on vous demande d’autoriser le chargement de divers scripts et ressources de sites web. Certaines de ces ressources ne sont pas requises, mais pour simplifier le processus, sélectionnez Ajouter lorsque vous y êtes invité.

Installez ASP.NET 4.8 sur Windows Server

Si vous souhaitez obtenir des informations plus détaillées pour installer ASP.NET sur IIS, consultez IIS 8.0 avec ASP.NET 3.5 et ASP.NET 4.5.

Notes

Web Platform Installer est arrivé en fin de vie le 01/07/22. Pour plus d’informations, consultez Web Platform Installer - Fin du support et retrait du flux produit/application. Vous pouvez installer directement ASP.NET 4.8 à partir d’IIS.

  1. Dans le volet gauche du Gestionnaire de serveur, sélectionnez IIS. Cliquez avec le bouton droit sur le serveur et sélectionnez Ajouter des rôles et des fonctionnalités.

  2. Dans l’Assistant, passez à la section Fonctionnalités et installez ASP.NET 4.8.

    Screenshot of IIS Add roles and features for IIS: ASP.NET 4.8 selected.

    Note

    Si vous utilisez Windows Server 2008 R2, installez ASP.NET 4 à la place à l’aide de cette commande :

    C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -ir

  3. Redémarrez le système ou exécutez net stop was /y suivi de net start w3svc à partir d’une invite de commandes pour prendre en compte une modification de la variable système PATH.

Choisir une option de déploiement

Si vous avez besoin d’aide pour déployer l’application sur IIS, considérez les options suivantes :

  • Déployez en créant un fichier de paramètres de publication dans IIS et en important les paramètres dans Visual Studio. Dans certains scénarios, il s’agit d’un moyen rapide de déployer votre application. Lorsque vous créez le fichier de paramètres de publication, les autorisations sont automatiquement configurées dans IIS.

  • Déployez en publiant dans un dossier local et en copiant la sortie par une méthode préférée dans un dossier d’application préparé sur IIS.

(Facultatif) Déployez à l’aide d’un fichier de paramètres de publication

Vous pouvez utiliser cette option pour créer un fichier de paramètres de publication et l’importer dans Visual Studio.

Remarque

Si vous souhaitez configurer Web Deploy manuellement au lieu d’importer les paramètres de publication, vous devrez vous assurer qu’un dossier d’application sur le serveur est configuré avec les valeurs et autorisations appropriées (consultez Configurer le site web ASP.NET).

Installer et configurer Web Deploy sur Windows Server

Web Deploy fournit des fonctionnalités de configuration supplémentaires qui permettent de créer le fichier de paramètres de publication à partir de l’interface utilisateur.

Notes

Web Platform Installer est arrivé en fin de vie le 01/07/22. Pour plus d’informations, consultez Web Platform Installer - Fin du support et retrait du flux produit/application. Vous pouvez installer directement Web Deploy 4.0 pour créer le fichier de paramètres de publication.

  1. Si vous n’avez pas encore installé les Scripts et outils de gestion IIS, faites-le maintenant.

    Accédez à Sélectionner des rôles de serveurs>Serveur web (IIS)>Outils de gestion, sélectionnez le rôle Scripts et outils de gestion IIS, cliquez sur Suivant, puis installez le rôle.

    Install IIS Management Scripts and Tools

    Les scripts et les outils sont nécessaires pour permettre la génération du fichier de paramètres de publication.

    Veillez également à installer le Service de gestion et la Console de gestion IIS (ils peuvent déjà être installés).

  2. Sur Windows Server, téléchargez Web Deploy 4.0.

  3. Exécutez le programme d’installation Web Deploy et veillez à sélectionner une installation Complète au lieu d’une installation classique.

    Une fois l’installation terminée, vous obtenez les composants dont vous avez besoin pour générer un fichier de paramètres de publication. (Si vous choisissez Personnalisé à la place, vous pouvez voir la liste des composants, comme montré dans l’illustration suivante.)

    Screenshot showing Web Deploy 4.0 components

  4. (Facultatif) Vérifiez que Web Deploy s’exécute correctement en ouvrant Panneau de configuration > Système et sécurité > Outils d’administration > Services, puis en vérifiant que :

    • Le Service agent de déploiement web est en cours d’exécution (le nom du service est différent dans les versions antérieures).

    • Le Service de gestion web est en cours d’exécution.

    Si l’un des services d’agent n’est pas en cours d’exécution, redémarrez le service agent de déploiement web.

    Si le service agent de déploiement web n’est pas présent, accédez à Panneau de configuration > Programmes > Désinstaller un programme, recherchez Microsoft Web Deploy <version>. Choisissez Changer l’installation et veillez à choisir Sera installé sur le disque dur local pour les composants Web Deploy. Effectuez les étapes relatives au changement de l’installation.

Créer le fichier de paramètres de publication dans IIS sur Windows Server

  1. Fermez et rouvrez la console de gestion IIS pour afficher les options de configuration mises à jour dans l’IU.

  2. Dans IIS, cliquez avec le bouton droit sur le site web par défaut, choisissez Déployer>Activer la publication Web Deploy.

    Configure Web Deploy configuration

    Si vous ne voyez pas le menu Déployer, consultez la section précédente pour vérifier que Web Deploy est en cours d’exécution.

  3. Dans la boîte de dialogue Activer la publication Web Deploy, examinez les paramètres.

  4. Cliquez sur Setup.

    Dans le panneau Résultats, la sortie indique que les droits d’accès sont accordés à l’utilisateur spécifié et qu’un fichier ayant l’extension .publishsettings a été généré à l’emplacement indiqué dans la boîte de dialogue.

    <?xml version="1.0" encoding="utf-8"?>
    <publishData>
      <publishProfile
        publishUrl="https://myhostname:8172/msdeploy.axd"
        msdeploySite="Default Web Site"
        destinationAppUrl="http://myhostname:80/"
        mySQLDBConnectionString=""
        SQLServerDBConnectionString=""
        profileName="Default Settings"
        publishMethod="MSDeploy"
        userName="myhostname\myusername" />
    </publishData>
    

    En fonction de votre configuration Windows Server et IIS, vous voyez des valeurs distinctes dans le fichier XML. Voici quelques détails sur les valeurs que vous voyez :

    • Le fichier msdeploy.axd référencé dans l’attribut publishUrl est un fichier de gestionnaire HTTP généré dynamiquement pour Web Deploy. (À des fins de test, http://myhostname:8172 fonctionne également, en règle générale.)

    • Le port publishUrl a la valeur 8172, ce qui correspond au port par défaut de Web Deploy.

    • Le port destinationAppUrl a la valeur 80, ce qui correspond au port par défaut d’IIS.

    • Dans les étapes suivantes, si vous ne parvenez pas à vous connecter à l’hôte distant dans Visual Studio en utilisant le nom d’hôte, testez l’adresse IP du serveur à la place du nom d’hôte.

      Notes

      Si vous publiez sur IIS s’exécutant sur une machine virtuelle Azure, vous devez ouvrir un port entrant pour Web Deploy et IIS dans le groupe de sécurité réseau. Pour plus d’informations, consultez Ouvrir des ports sur une machine virtuelle.

  5. Copiez ce fichier sur l’ordinateur où vous exécutez Visual Studio.

Importer les paramètres de publication dans Visual Studio et déployer

  1. Sur l’ordinateur sur lequel le projet ASP.NET est ouvert dans Visual Studio, cliquez avec le bouton droit sur le projet dans l’Explorateur de solutions, puis choisissez Publier.

    Si vous avez déjà configuré des profils de publication, le volet Publier s’affiche. Cliquez sur Nouveau ou Créer un nouveau profil.

  2. Sélectionnez l’option permettant d’importer un profil.

    Dans la boîte de dialogue Publier, cliquez sur Importer un profil.

    Choose Publish

  3. Accédez à l’emplacement du fichier de paramètres de publication que vous avez créé dans la section précédente.

  4. Dans la boîte de dialogue Importer le fichier de paramètres de publication, accédez au profil que vous avez créé dans la section précédente et sélectionnez-le, puis cliquez sur Ouvrir.

    Cliquez sur Terminer pour enregistrer le profil de publication, puis sur Publier.

    Visual Studio commence le processus de déploiement, tandis que la fenêtre Sortie affiche la progression et les résultats.

    Si vous obtenez des erreurs de déploiement, cliquez sur Plus d’actions>Modifier pour modifier les paramètres. Modifiez les paramètres, puis cliquez sur Valider pour tester les nouveaux paramètres. Si le nom d’hôte est introuvable, cherchez l’adresse IP au lieu du nom d’hôte dans les champs Serveur et URL de destination.

    Edit settings in the Publish tool

Une fois l’application déployée, elle doit démarrer automatiquement. Si l’application ne démarre pas à partir de Visual Studio, démarrez l’application dans IIS pour vérifier qu’elle s’exécute correctement.

Lorsque vous êtes prêt(e), basculez vers une configuration de débogage.

Important

Si vous choisissez de déboguer une configuration de mise en production, vous désactivez le débogage dans le fichier web.config lorsque vous publiez.

  1. Sélectionnez Autres options>Modifier pour modifier le profil, puis sélectionnez Paramètres.
  2. Sélectionnez une configuration de débogage, puis sélectionnez Supprimer les fichiers supplémentaires à la destination sous les options Publier le fichier.
  3. Sélectionnez Enregistrer, puis republiez l’application.
  1. Sélectionnez Modifier pour modifier le profil, puis sélectionnez Paramètres.
  2. Sélectionnez une configuration de débogage, puis sélectionnez Supprimer les fichiers supplémentaires à la destination sous les options Publier le fichier.
  3. Sélectionnez Enregistrer, puis republiez l’application.

(Facultatif) Déployez en publiant dans un dossier local

Vous pouvez utiliser cette option pour déployer votre application si vous souhaitez copier l’application sur IIS à l’aide de PowerShell, RoboCopy, ou si vous souhaitez copier manuellement les fichiers.

Configurez le site web ASP.NET sur l’ordinateur Windows Server

  1. Ouvrez l’Explorateur Windows et créez un nouveau dossier, C:\Publish, dans lequel vous déploierez le projet ASP.NET.

  2. S’il n’est pas déjà ouvert, ouvrez le Gestionnaire des services Internet (IIS). (Dans le volet gauche du Gestionnaire de serveur, sélectionnez IIS. Cliquez avec le bouton droit sur le serveur, puis sélectionnez Gestionnaire des services Internet (IIS).)

  3. Sous Connexions dans le volet gauche, accédez à Sites.

  4. Sélectionnez le Site web par défaut, choisissez Paramètres de base, puis définissez le Chemin d’accès physique sur C:\Publish.

  5. Cliquez avec le bouton droit sur le nœud Site web par défaut et sélectionnez Ajouter une application.

  6. Définissez le champ Alias sur MyASPApp, acceptez le pool d’applications par défaut (DefaultAppPool), puis définissez le Chemin d’accès physique sur C:\Publish.

  7. Sous Connexions, sélectionnez Pools d’applications. Ouvrez DefaultAppPool et définissez le champ pool d’applications sur ASP.NET v4.0 (ASP.NET 4.5 n’est pas une option pour le pool d’applications).

  8. Une fois le site sélectionné dans le gestionnaire IIS, choisissez Modifier les autorisations et vérifiez que IUSR, IIS_IUSRS ou l’utilisateur configuré pour le pool d’applications est un utilisateur autorisé avec des droits de lecture et d’exécution. Si aucun de ces utilisateurs n’est présent, ajoutez IUSR en tant qu’utilisateur disposant de droits de lecture et d’exécution.

Publier et déployer l’application en publiant dans un dossier local à partir de Visual Studio

Vous pouvez également publier et déployer l’application à l’aide du système de fichiers ou d’autres outils.

Pour ASP.NET 4.8, assurez-vous que le fichier web.config répertorie la version correcte de .NET.

  • Si vous ciblez ASP.NET 4.8, vérifiez que cette valeur de version est répertoriée dans le fichier web.config :

        <system.web>
          <compilation debug="true" targetFramework="4.8" />
          <httpRuntime targetFramework="4.8" />
          <httpModules>
            <add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web" />
          </httpModules>
        </system.web>
        ```
    
    
  • Si vous installez ASP.NET 4 au lieu de la version 4.8, la valeur de version doit être spécifiée comme 4.0 dans le fichier web.config.

Procédez comme suit pour publier et déployer l’application :

  1. Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le nœud de projet et sélectionnez Publier (pour Web Forms, Publier une application web).

    Si vous avez déjà configuré des profils de publication, le volet Publier s’affiche. Cliquez sur Nouveau profil.

  2. Dans la boîte de dialogue Publier, sélectionnez Dossier, cliquez sur Parcourir, puis créez un nouveau dossier C:\Publish.

    Screenshot of the Pick a publish target dialog in Visual Studio with the Folder `C:\Publish' selected as the publish target.

    Cliquez sur Terminer pour enregistrer le profil de publication.

    Screenshot of the Pick a publish target dialog in Visual Studio with the Folder `C:\Publish' selected as the publish target.

    Cliquez sur Terminer pour enregistrer le profil de publication.

  3. Basculez vers une configuration de débogage.

    Choisissez Modifier pour modifier le profil, puis sélectionnez Paramètres. Choisissez une configuration de débogage, puis sélectionnez Supprimer les fichiers supplémentaires à la destination sous les options Publier le fichier.

    Screenshot of the Settings tab in the Publish dialog box. Configuration is set to Debug and the Publish button is selected.

    Remarque

    Si vous utilisez une build de mise en production, vous désactivez le débogage dans le fichier web.config lorsque vous publiez.

  4. Cliquez sur Publier.

    L’application publie une configuration de Débogage du projet dans le dossier local. La progression s’affiche dans la fenêtre Sortie.

  5. Copiez le répertoire du projet ASP.NET à partir de l’ordinateur Visual Studio vers le répertoire local configuré pour l’application ASP.NET (dans cet exemple, C:\Publish) sur l’ordinateur Windows Server. Dans ce tutoriel, nous supposons que vous copiez le répertoire manuellement, mais vous pouvez utiliser d’autres outils tels que PowerShell, Xcopy ou Robocopy.

    Attention

    Si vous devez modifier ou regénérer le code, vous devez republier et répéter cette étape. Le fichier exécutable que vous avez copié sur l’ordinateur distant doit correspondre exactement à la source et aux symboles locaux. Si vous ne le faites pas, vous recevrez un avertissement cannot find or open the PDB file dans Visual Studio lorsque vous tentez de déboguer le processus.

  6. Sur Windows Server, vérifiez que vous pouvez exécuter l’application correctement en l’ouvrant dans votre navigateur.

    Si l’application ne s’exécute pas correctement, il peut y avoir une incompatibilité entre la version de ASP.NET installée sur votre serveur et votre ordinateur Visual Studio, ou vous avez peut-être un problème de configuration de site web ou IIS. Revérifiez les étapes précédentes.

Téléchargez et installez les outils à distance sur Windows Server

Téléchargez la version des outils à distance qui correspondent à votre version de Visual Studio.

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 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 distants.
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 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 distants.
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 ou ARM64). Sur Windows Server, consultez Débloquer le téléchargement du 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 du 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 ou ARM64). Sur Windows Server, consultez Débloquer le téléchargement du 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 ou ARM64). Sur Windows Server, consultez Débloquer le téléchargement du 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 du 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.

Configurez le débogueur distant sur Windows Server

  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.

    Screenshot of remote debugger configuration.

    Screenshot of remote debugger configuration.

    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.

    Screenshot of remote debugger window

    Screenshot of remote debugger window

    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

Notes

Si vous devez ajouter des autorisations pour des utilisateurs supplémentaires, modifiez le mode d’authentification ou le numéro de port du débogueur distant, consultez Configurer le débogueur distant.

Pour plus d’informations sur l’exécution du débogueur distant en tant que service, consultez Exécuter le débogueur distant en tant que service.

Attachement à l’application ASP.NET à partir de l’ordinateur Visual Studio

  1. Sur l’ordinateur Visual Studio, ouvrez la solution que vous essayez de déboguer (MyASPApp si vous suivez les étapes de cet article).

  2. Dans Visual Studio, sélectionnez Déboguer > Attacher au processus (Ctrl + Alt + P).

    Conseil

    Dans Visual Studio 2017 et versions ultérieures, vous pouvez vous rattacher au même processus auquel vous avez précédemment attaché à l’aide des options Déboguer > Rattacher au processus... (Maj + Alt + P).

  3. Définissez le champ Qualificateur sur <nom d’ordinateur distant>, puis appuyez sur Entrée.

    Vérifiez que Visual Studio ajoute le port requis au nom de l’ordinateur, qui apparaît au format : <nom d’ordinateur distant>:port

    Dans Visual Studio 2022, vous devriez voir <nom d’ordinateur distant>:4026

    Sur Visual Studio 2019, vous devriez voir <nom d’ordinateur distant>:4024

    Le port est obligatoire. Si vous ne voyez pas le numéro de port, ajoutez-le manuellement.

  4. Cliquez sur Actualiser. Des processus doivent s’afficher dans la fenêtre Processus disponibles .

    Si vous ne voyez aucun processus, essayez d’utiliser l’adresse IP au lieu du nom de l’ordinateur distant (le port est requis). Vous pouvez utiliser ipconfig dans une ligne de commande pour obtenir l’adresse IPv4.

  5. Cochez Afficher les processus de tous les utilisateurs.

  6. Tapez la première lettre d’un nom de processus pour trouver rapidement w3wp.exe pour ASP.NET 4.5.

    Si vous avez plusieurs processus montrant w3wp.exe, vérifiez la colonne Nom d’utilisateur. Dans certains scénarios, la colonne Nom d’utilisateur affiche le nom de votre pool d’applications, par exemple IIS APPPOOL\DefaultAppPool. Si vous voyez le pool d’applications, un moyen simple d’identifier le processus approprié consiste à créer un nouveau pool d’applications nommé pour l’instance d’application que vous souhaitez déboguer, puis vous pouvez le trouver facilement dans la colonne Nom d’utilisateur.

    RemoteDBG_AttachToProcess

  7. Sélectionnez Attacher.

  8. Ouvrez le site web de l’ordinateur distant. Dans un navigateur, accédez à http://<nom d’ordinateur distant>.

    La page web ASP.NET doit s’afficher.

  9. Dans l’application ASP.NET en cours d’exécution, sélectionnez le lien vers la page Confidentialité.

    Le point d’arrêt doit être atteint dans Visual Studio.

    Si vous ne parvenez pas à attacher ou à atteindre le point d’arrêt, consultez Résoudre les problèmes de débogage à distance.

Résolution des problèmes de déploiement IIS

  • Si vous ne pouvez pas vous connecter à l’hôte avec le nom d’hôte, essayez plutôt l’adresse IP.
  • Vérifiez que les ports requis sont ouverts sur le serveur distant.
  • Vérifiez que la version d’ASP.NET utilisée dans votre application est la même que la version que vous avez installée sur le serveur. Pour votre application, vous pouvez voir et définir la version dans la page Propriétés. Pour définir l’application sur une autre version, cette version doit être installée.
  • Si l’application a tenté de s’ouvrir, mais que vous voyez un avertissement de certificat, choisissez de faire confiance au site. Si vous avez déjà fermé l'avertissement, vous pouvez modifier le profil de publication, un fichier *.pubxml, dans votre projet et ajouter l'élément suivant (à des fins de test uniquement) : <AllowUntrustedCertificate>true</AllowUntrustedCertificate>
  • Si l’application ne démarre pas à partir de Visual Studio, démarrez l’application dans IIS pour vérifier qu’elle a été correctement déployée.
  • Consultez les informations d’état dans la fenêtre Sortie dans Visual Studio, puis consultez vos messages d’erreur.

Ouvrez les ports requis sur Windows Server

Dans la plupart des configurations, les ports requis sont ouverts par l’installation de ASP.NET et du débogueur distant. Toutefois, vous devrez peut-être vérifier que les ports sont ouverts.

Remarque

Sur une machine virtuelle Azure, vous devez ouvrir des ports via le groupe de sécurité réseau.

Ports requis :

  • 80 : Obligatoire pour IIS.
  • 4024 : obligatoire pour le débogage à distance à partir de Visual Studio 2019 (voir Affectations de port du débogueur distant pour plus d’informations).

  • UDP 3702 : (Facultatif) Le port de découverte vous permet d’utiliser le bouton Rechercher lors de l’attachement au débogueur distant dans Visual Studio.

En outre, ces ports devraient déjà être ouverts par l’installation d’ASP.NET :

  • 8172 : (facultatif) requis pour que Web Deploy puisse déployer l’application à partir de Visual Studio.

Ouvrir un port

  1. Pour ouvrir un port sur Windows Server, ouvrez le menu Démarrer, puis recherchez Pare-feu Windows avec fonctions avancées de sécurité.

  2. Choisissez ensuite Règles de trafic entrant > Nouvelle règle > Port. Choisissez Suivant et sous Ports locaux spécifiques, entrez le numéro de port, sélectionnez Suivant, puis Autoriser la connexion, sélectionnez Suivant, puis ajoutez le nom (IIS, Web Deploy ou msvsmon) pour la règle de trafic entrant.

    Pour plus d’informations sur la configuration du Pare-feu Windows, consultez Configurer le Pare-feu Windows pour le débogage distant.

  3. Créez des règles supplémentaires pour les autres ports requis.