Préparation du débogage : types de projets Visual C++Debugging Preparation: Visual C++ Project Types

Cette section explique le débogage de types de projets de base, créés par les modèles de projet Visual C++Visual C++.This section describes how to debug the basic project types created by the Visual C++Visual C++ project templates.

Notez que ces types de projets qui créent des DLL en tant que leur sortie ont été regroupées dans le débogage de projets de DLL en raison des fonctionnalités communes qu’ils partagent.Note that those project types that create DLLs as their output have been grouped into Debugging DLL Projects because of the common features they share.

Dans cette rubriqueIn this topic

Paramètres de propriété recommandésRecommended property settings

Projets Win32Win32 projects

Certaines propriétés doivent être définies de la même manière pour tous les scénarios de débogage non managé.Certain properties should be set the same way for all unmanaged debugging scenarios. Les tableaux suivants présentent les paramètres de propriété recommandés.The following tables display recommended property settings. Les paramètres qui n'y sont pas répertoriés peuvent varier parmi les différents types de projet non managés.Settings not listed here may vary among the different unmanaged project types. Pour plus d’informations, consultez paramètres de projet pour une Configuration Debug C++For more information, see Project Settings for a C++ Debug Configuration

Propriétés de configuration | C/C++ | nœud optimisationConfiguration Properties | C/C++ | Optimization node

Nom de la propriétéProperty Name ParamètreSetting
OptimizationOptimization La valeur désactivé (/ 0d).Set to Disabled (/0d). Le code optimisé est plus difficile à déboguer, car les instructions générées ne correspondent pas directement à votre code source.Optimized code is harder to debug, because the generated instructions do not correspond directly to your source code. Si vous trouvez que votre programme comporte un bogue visible uniquement dans le code optimisé, vous pouvez activer ce paramètre, mais n’oubliez pas que le code affiché dans le désassemblage fenêtre est générée à partir d’une source optimisée qui peut ne pas correspond ce que vous voyez dans votre source Windows.If you find your program has a bug that appears only in optimized code, you can turn this setting on, but remember that code shown in the Disassembly window is generated from optimized source that might not match what you see in your source windows. D’autres fonctionnalités, telles que l’exécution pas à pas, peuvent ne pas se comporter comme prévu.Other features, such as stepping, might not behave as expected.

Propriétés de configuration | l’éditeur de liens | nœud débogageConfiguration Properties | Linker | Debugging node

Nom de la propriétéProperty Name ParamètreSetting
Générer des informations de débogageGenerate debugging information Vous devez toujours définir cette option Oui (/Debug) pour créer les symboles et fichiers nécessaires pour le débogage.You should always set this option to Yes (/DEBUG) to create debugging symbols and files needed for debugging. Lorsque l'application passe en phase de production, vous pouvez la désactiver.When the application goes into production, you can set it to off.

Dans cette rubriqueIn this topic

Projets Win32Win32 projects

Les applications Windows32 sont des programmes Windows traditionnels écrits en C ou C++.Win32 applications are traditional Windows programs written in C or C++. Le débogage de ce type d'application dans Visual StudioVisual Studio est assez simple.Debugging this type of application in Visual StudioVisual Studio is straightforward.

Les applications Win32 comprennent les applications MFC et les projets ATL.Win32 applications include MFC applications and ATL projects. Elles utilisent les API Windows et parfois également MFC ou ATL, mais elles n'utilisent pas le Common Language Runtime (CLR).They use Windows APIs and may use MFC or ATL, but they do not use the common language runtime (CLR). Toutefois, elles peuvent appeler du code managé qui utilise le CLR.They can, however, call managed code that uses the CLR.

La procédure suivante explique comment déboguer un projet Win32 à partir de Visual StudioVisual Studio.The following procedure explains how to debug a Win32 project from within Visual StudioVisual Studio. Une autre façon de déboguer une application Win32 consiste à démarrer l'application en dehors de Visual StudioVisual Studio, puis de l'attacher.Another way to debug a Win32 application is to start the application outside of Visual StudioVisual Studio and attach to it. Pour plus d’informations, consultez attacher aux processus en cours d’exécution.For more information, see Attach to Running Processes.

Pour déboguer une application Win32 C ou C++To debug a C or C++ Win32 application

  1. Ouvrez le projet dans Visual Studio.Open the project in Visual Studio.

  2. Sur le déboguer menu, choisissez Démarrer.On the Debug menu, choose Start.

  3. Débogage en utilisant les techniques présentées dans principes fondamentaux du débogueur.Debug using the techniques discussed in Debugger Basics.

Pour définir manuellement une configuration DebugTo manually set a Debug configuration

  1. Dans le menu vue, cliquez sur Pages de propriétés.On the View menu, click Property Pages.

  2. Cliquez sur le propriétés de Configuration nœud pour l’ouvrir s’il n’est pas déjàClick the Configuration Properties node to open it if it is not already

  3. Sélectionnez généralet définissez la valeur de la sortie ligne déboguer.Select General, and set the value of the Output row to Debug.

  4. Ouvrez le C/C++ nœud, puis sélectionnez général.Open the C/C++ node, and select General.

    Dans le déboguer ligne que vous spécifiez le type d’informations devant être généré par le compilateur de débogage.In the Debug row you specify the type of debugging information to be generated by the compiler. Vous pouvez notamment choisir la base de données de programme (/Zi) ou base de données de programme pour modifier & Continuer (/ Zi).Values you might choose include Program Database (/Zi) or Program Database for Edit & Continue (/ZI).

  5. Sélectionnez optimisation, puis, dans le optimisation ligne, sélectionnez désactivé (/ 0d) dans la liste déroulante.Select Optimization, and in the Optimization row, select Disabled (/0d) from the drop-down list.

    Le code optimisé est plus difficile à déboguer, car les instructions générées ne correspondent pas directement à votre code source.Optimized code is harder to debug, because the generated instructions do not correspond directly to your source code. 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.If you find your program has a bug that appears only in optimized code, you can turn this setting on, but remember that code shown in the Disassembly window is generated from optimized source that may not match what you see in your source windows. Certains fonctionnalités, telles que l’exécution pas à pas, peuvent afficher des points d’arrêt et un point d’exécution incorrects.Features such as stepping are likely to show breakpoints and execution point incorrectly.

  6. Ouvrez le l’éditeur de liens nœud, puis sélectionnez débogage.Open the Linker node, and select Debugging. Dans la première générer ligne, sélectionnez Oui (/Debug) dans la liste déroulante.In the first Generate row, select Yes (/DEBUG) from the drop-down list. Sélectionnez toujours ce paramètre lorsque vous déboguez.Always set this when you are debugging.

    Pour plus d’informations, consultezparamètres de projet pour une Configuration Debug C++.For more information, seeProject Settings for a C++ Debug Configuration.

    Dans cette rubriqueIn this topic

Applications Windows Forms (.NET)Windows Forms applications (.NET)

Le Windows Forms Application (.NET) modèle crée un Visual C++Visual C++ application Windows Forms.The Windows Forms Application (.NET) template creates a Visual C++Visual C++ Windows Forms application. Pour plus d’informations, consultez Comment : créer un projet d’application Windows.For more information, see How to: Create a Windows Application Project.

Le débogage de ce type d'application dans Visual StudioVisual Studio est semblable à celui réalisé dans les applications Windows Forms managées.Debugging this type of application in Visual StudioVisual Studio is similar to that in managed Windows Forms applications.

Lorsque vous créez un projet Windows Forms à l'aide du modèle de projet, Visual StudioVisual Studio crée automatiquement les paramètres requis pour les configurations Debug et Release.When you create a Windows Forms project with the project template, Visual StudioVisual Studio automatically creates required settings for the Debug and Release configurations. Si nécessaire, vous pouvez modifier ces paramètres dans le <nom_projet > Pages de propriétés boîte de dialogue.If necessary, you can change these settings in the <project name> Property Pages dialog box. Pour plus d’informations, consultez Configurations Debug et Release.For more information, see Debug and Release Configurations.

Pour plus d’informations, consultez paramètres de projet pour une Configuration Debug C++.For more information, see Project Settings for a C++ Debug Configuration.

Une autre façon de déboguer une application Windows Forms consiste à démarrer l'application en dehors de Visual StudioVisual Studio et à l'attacher à celui-ci.Another way to debug a Windows Forms application is to start the application outside of Visual StudioVisual Studio and attach to it. Pour plus d’informations, consultez attachement à un ou plusieurs programmes en cours d’exécution.For more information, see Attaching to a Running Program or Multiple Programs.

Dans cette rubriqueIn this topic

Voir aussiSee Also

Principes de base du débogueur Debugger Basics
Paramètres de projet pour une Configuration de débogage C++ Project Settings for a C++ Debug Configuration
Attachement à un ou plusieurs programmes en cours d’exécution Attaching to a Running Program or Multiple Programs
Configurations Debug et Release Debug and Release Configurations
Comment : créer un projet d’Application WindowsHow to: Create a Windows Application Project