Préparation du débogage : types de projet C++

Cette section explique comment déboguer les types de projets de base créés par les modèles de projet Visual C++.

Notez que ces types de projets qui créent des DLL en sortie ont été regroupés dans Débogage de projets DLL à cause des fonctionnalités communes qu'ils partagent.

Dans cette rubrique

Paramètres de propriété recommandés

Projets Win32

Certaines propriétés doivent être définies de la même manière pour tous les scénarios de débogage non managé. Les tableaux suivants présentent les paramètres de propriété recommandés. Les paramètres qui n'y sont pas répertoriés peuvent varier parmi les différents types de projet non managés. Pour plus d’informations, consultez Paramètres de projet pour une configuration de débogage C++.

Propriétés de configuration | C/C++ | nœud Optimisation

Nom de la propriété Paramètre
Optimisation Affectez la valeur Désactivé (/0d). Le code optimisé est plus difficile à déboguer, car les instructions générées ne correspondent pas directement à votre code source. Si vous trouvez que votre programme présente un bogue uniquement dans du code optimisé, vous pouvez activer ce paramètre, tout en gardant à l’esprit que le code affiché dans la fenêtre Code machine est généré à partir d’une source optimisée qui peut ne pas correspondre à ce que vous voyez dans vos fenêtres sources. D'autres fonctionnalités, telles que l'exécution pas à pas, peuvent ne pas se comporter comme prévu.

Propriétés de configuration | Éditeur de liens | nœud Débogage

Nom de la propriété Paramètre
Générer des informations de débogage Vous devez toujours définir cette option sur Oui (/DEBUG) pour créer les symboles et fichiers nécessaires au débogage. Lorsque l'application passe en phase de production, vous pouvez la désactiver.

Dans cette rubrique

Projets Win32

Les applications Windows32 sont des programmes Windows traditionnels écrits en C ou C++. Le débogage de ce type d’application dans Visual Studio est assez simple.

Les applications Win32 comprennent les applications MFC et les projets ATL. Elles utilisent les API Windows et parfois également MFC ou ATL, mais elles n'utilisent pas le Common Language Runtime (CLR). Toutefois, elles peuvent appeler du code managé qui utilise le CLR.

La procédure suivante explique comment déboguer un projet Win32 à partir de Visual Studio. Une autre façon de déboguer une application Win32 consiste à démarrer l’application en dehors de Visual Studio, puis de l’attacher. Pour plus d’informations, consultez Attacher aux processus en cours d’exécution.

Pour déboguer une application Win32 C ou C++

  1. Ouvrez le projet dans Visual Studio.

  2. Dans le menu Déboguer, choisissez Démarrer.

  3. Déboguez à l’aide des techniques décrites dans Présentation du débogueur.

Pour définir manuellement une configuration Debug

  1. Dans le menu Affichage, cliquez sur Pages de propriétés.

  2. Cliquez sur le nœud Propriétés de configuration pour l’ouvrir s’il ne l’est pas déjà

  3. Sélectionnez Général et affectez la valeur Debug à la ligne Sortie.

  4. Ouvrez le nœud C/C++ et sélectionnez Général.

    À la ligne Déboguer, spécifiez le type d’informations de débogage que le compilateur doit générer. Vous pouvez notamment choisir Base de données du programme (/Zi) ou Base de données du programme pour Modifier & Continuer.

  5. Sélectionnez Optimisation puis, dans la ligne Optimisation, sélectionnez Désactivé (/0d) dans la liste déroulante.

    Le code optimisé est plus difficile à déboguer, car les instructions générées ne correspondent pas directement à votre code source. Si vous constatez que votre programme comporte un bogue visible uniquement dans le code optimisé, vous pouvez activer ce paramètre, mais rappelez-vous que le code affiché dans la fenêtre Code Machine est généré à partir d'une source optimisée qui ne correspond peut-être pas à ce que vous voyez dans vos fenêtres sources. Certains fonctionnalités, telles que l'exécution pas à pas, peuvent afficher des points d'arrêt et un point d'exécution incorrects.

  6. Ouvrez le nœud Éditeur de liens et sélectionnez Débogage. Dans la première ligne Générer, sélectionnez Oui (/DEBUG) dans la liste déroulante. Sélectionnez toujours ce paramètre lorsque vous déboguez.

    Pour plus d’informations, consultez Paramètres de projet pour une configuration de débogage C++.

    Dans cette rubrique