Preparación de la depuración: tipos de proyecto de Visual C++Debugging Preparation: Visual C++ Project Types

En esta sección se describe cómo depurar los tipos de proyectos básicos creados mediante las plantillas de proyecto de Visual C++Visual C++.This section describes how to debug the basic project types created by the Visual C++Visual C++ project templates.

Tenga en cuenta que los tipos de proyecto que crean archivos DLL como su resultado se han agrupado en depurar proyectos DLL debido a las características comunes que comparten.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.

En este temaIn this topic

Valores de propiedades recomendadosRecommended property settings

Proyectos Win32Win32 projects

Algunas propiedades se deben establecer de la misma forma en todos los casos de depuración no administrada.Certain properties should be set the same way for all unmanaged debugging scenarios. En las siguientes tablas se muestran los valores de propiedades recomendados.The following tables display recommended property settings. La configuración que no se incluye puede variar entre los diferentes tipos de proyectos no administrados.Settings not listed here may vary among the different unmanaged project types. Para obtener más información, vea configuración del proyecto para una configuración de depuración de C++For more information, see Project Settings for a C++ Debug Configuration

Propiedades de configuración | C/C++ | nodo de optimizaciónConfiguration Properties | C/C++ | Optimization node

Nombre de la propiedadProperty Name ParámetroSetting
OptimizationOptimization Establecido en deshabilitado (/ 0D).Set to Disabled (/0d). El código optimizado es más difícil de depurar, puesto que las instrucciones generadas no se corresponden directamente con las instrucciones de código fuente.Optimized code is harder to debug, because the generated instructions do not correspond directly to your source code. Si detecta que el programa tiene un error que sólo aparece en código optimizado, puede activar esta configuración, pero recuerde que el código se muestra en el desensamblado ventana se genera a partir de código optimizado que posiblemente no coincida con lo que se ve en el origen en 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. Es posible que otras características, como la ejecución paso a paso, no funcionen como se espera.Other features, such as stepping, might not behave as expected.

Propiedades de configuración | vinculador | nodo depuraciónConfiguration Properties | Linker | Debugging node

Nombre de la propiedadProperty Name ParámetroSetting
Generar información de depuraciónGenerate debugging information Siempre debe establecer esta opción en Sí (/Debug) para crear los símbolos de depuración y archivos necesarios para la depuración.You should always set this option to Yes (/DEBUG) to create debugging symbols and files needed for debugging. Cuando la aplicación entra en modo de producción, puede desactivarla.When the application goes into production, you can set it to off.

En este temaIn this topic

Proyectos Win32Win32 projects

Las aplicaciones Win32 son programas tradicionales de Windows escritos en C o C++.Win32 applications are traditional Windows programs written in C or C++. La depuración de este tipo de aplicación en Visual StudioVisual Studio es muy sencilla.Debugging this type of application in Visual StudioVisual Studio is straightforward.

Entre las aplicaciones Win32 se incluyen las aplicaciones MFC y los proyectos ATL.Win32 applications include MFC applications and ATL projects. Utilizan API de Windows y tal vez MFC o ATL, pero no utilizan Common Language Runtime (CRL).They use Windows APIs and may use MFC or ATL, but they do not use the common language runtime (CLR). Sin embargo, pueden llamar al código administrado que utiliza el CLR.They can, however, call managed code that uses the CLR.

El procedimiento siguiente explica cómo depurar un proyecto Win32 desde Visual StudioVisual Studio.The following procedure explains how to debug a Win32 project from within Visual StudioVisual Studio. Otra manera de depurar una aplicación Win32 es iniciar la aplicación fuera de Visual StudioVisual Studio y asociarse.Another way to debug a Win32 application is to start the application outside of Visual StudioVisual Studio and attach to it. Para obtener más información, consulte adjuntar a procesos en ejecución.For more information, see Attach to Running Processes.

Para depurar una aplicación Win32 de C o C++To debug a C or C++ Win32 application

  1. Abra el proyecto en Visual Studio.Open the project in Visual Studio.

  2. En el depurar menú, elija iniciar.On the Debug menu, choose Start.

  3. Depurar con las técnicas descritas en conceptos básicos del depurador.Debug using the techniques discussed in Debugger Basics.

Para establecer manualmente una configuración de depuraciónTo manually set a Debug configuration

  1. En el vista menú, haga clic en páginas de propiedades.On the View menu, click Property Pages.

  2. Haga clic en el propiedades de configuración nodo para abrirlo si aún no estáClick the Configuration Properties node to open it if it is not already

  3. Seleccione Generaly establezca el valor de la salida fila a depurar.Select General, and set the value of the Output row to Debug.

  4. Abra la C/C++ nodo y seleccione General.Open the C/C++ node, and select General.

    En el depurar fila se especifica el tipo de información que va a generar el compilador de depuración.In the Debug row you specify the type of debugging information to be generated by the compiler. Puede elegir los valores son base de datos de programa (/Zi) o base de datos de programa para editar y continuar (/ZI).Values you might choose include Program Database (/Zi) or Program Database for Edit & Continue (/ZI).

  5. Seleccione optimizacióny en el optimización fila, seleccione deshabilitado (/ 0D) en la lista desplegable.Select Optimization, and in the Optimization row, select Disabled (/0d) from the drop-down list.

    El código optimizado es más difícil de depurar, puesto que las instrucciones generadas no se corresponden directamente con las instrucciones de código fuente.Optimized code is harder to debug, because the generated instructions do not correspond directly to your source code. Si detecta que el programa tiene un error que sólo aparece en código optimizado, active esta configuración, pero recuerde que el código mostrado en la ventana Desensamblado se genera a partir del código optimizado, que posiblemente no coincida con lo que aparece en las ventanas de código fuente.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. Es probable que características como la ejecución paso a paso muestren puntos de interrupción y puntos de ejecución incorrectos.Features such as stepping are likely to show breakpoints and execution point incorrectly.

  6. Abra la vinculador nodo y seleccione depuración.Open the Linker node, and select Debugging. En la primera generar fila, seleccione Sí (/Debug) en la lista desplegable.In the first Generate row, select Yes (/DEBUG) from the drop-down list. Siempre establezca este valor cuando depure.Always set this when you are debugging.

    Para obtener más información, consulteconfiguración del proyecto para una configuración de depuración de C++.For more information, seeProject Settings for a C++ Debug Configuration.

    En este temaIn this topic

Aplicaciones de Windows Forms (. NET)Windows Forms applications (.NET)

El aplicación de Windows Forms (. NET) plantilla crea una Visual C++Visual C++ aplicación de Windows Forms.The Windows Forms Application (.NET) template creates a Visual C++Visual C++ Windows Forms application. Para obtener más información, consulta How to: Create a Windows Application Project.For more information, see How to: Create a Windows Application Project.

La depuración de este tipo de aplicación en Visual StudioVisual Studio es similar a la depuración en aplicaciones de Windows Forms administradas.Debugging this type of application in Visual StudioVisual Studio is similar to that in managed Windows Forms applications.

Cuando se crea un proyecto de formularios Windows Forms con la plantilla de proyecto, Visual StudioVisual Studio crea automáticamente la configuración requerida para las versiones Debug y 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 es necesario, puede cambiar esta configuración en el <nombre del proyecto > páginas de propiedades cuadro de diálogo.If necessary, you can change these settings in the <project name> Property Pages dialog box. Para obtener más información, consulte configuraciones Debug y Release.For more information, see Debug and Release Configurations.

Para obtener más información, consulte configuración del proyecto para una configuración de depuración de C++.For more information, see Project Settings for a C++ Debug Configuration.

Otra forma de depurar una aplicación de Windows Forms consiste en iniciarla fuera de Visual StudioVisual Studio y asociarla al depurador.Another way to debug a Windows Forms application is to start the application outside of Visual StudioVisual Studio and attach to it. Para obtener más información, consulte adjuntar a un programa en ejecución o varios programas.For more information, see Attaching to a Running Program or Multiple Programs.

En este temaIn this topic

Vea tambiénSee Also

Conceptos básicos del depurador Debugger Basics
Configuración del proyecto para una configuración de depuración de C++ Project Settings for a C++ Debug Configuration
Adjuntar a un programa en ejecución o varios programas Attaching to a Running Program or Multiple Programs
Configuraciones Debug y Release Debug and Release Configurations
Cómo: crear un proyecto de aplicación de WindowsHow to: Create a Windows Application Project