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
Paramètres de propriété recommandés
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. |
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++
Ouvrez le projet dans Visual Studio.
Dans le menu Déboguer, choisissez Démarrer.
Déboguez à l’aide des techniques décrites dans Présentation du débogueur.
Pour définir manuellement une configuration Debug
Dans le menu Affichage, cliquez sur Pages de propriétés.
Cliquez sur le nœud Propriétés de configuration pour l’ouvrir s’il ne l’est pas déjà
Sélectionnez Général et affectez la valeur Debug à la ligne Sortie.
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.
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.
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++.