Preparación de la depuración: Tipos de proyecto de C++
En esta sección se describe cómo depurar los tipos de proyectos básicos creados mediante las plantillas de proyecto de Visual C++.
Tenga en cuenta que esos tipos de proyecto que crean archivos DLL como resultado se han agrupado en Depurar proyectos DLL debido a las características comunes que comparten.
En este tema
Valores de propiedad recomendados
Valores de propiedades recomendados
Algunas propiedades se deben establecer de la misma forma en todos los casos de depuración no administrada. En las siguientes tablas se muestran los valores de propiedades recomendados. La configuración que no se incluye puede variar entre los diferentes tipos de proyectos no administrados. Para más información, vea Configuración del proyecto para una configuración de depuración de C++.
Propiedades de configuración | C/C++ | nodo de optimización
Nombre de la propiedad | Parámetro |
---|---|
Optimization | Establézcalo en 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. Si detecta que el programa tiene un error que solo 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. Es posible que otras características, como la ejecución paso a paso, no funcionen como se espera. |
Propiedades de configuración | Vinculador | nodo de depuración
Nombre de la propiedad | Parámetro |
---|---|
Generar información de depuración | Siempre debería establecer esta opción en Sí (/DEBUG) para crear los símbolos de depuración y archivos necesarios para depurar. Cuando la aplicación entra en modo de producción, puede desactivarla. |
Proyectos Win32
Las aplicaciones Win32 son programas tradicionales de Windows escritos en C o C++. La depuración de este tipo de aplicación en Visual Studio es muy sencilla.
Entre las aplicaciones Win32 se incluyen las aplicaciones MFC y los proyectos ATL. Utilizan API de Windows y tal vez MFC o ATL, pero no utilizan Common Language Runtime (CRL). Sin embargo, pueden llamar al código administrado que utiliza el CLR.
El procedimiento siguiente explica cómo depurar un proyecto Win32 desde Visual Studio. Otra manera de depurar una aplicación Win32 es iniciar la aplicación fuera de Visual Studio y asociársela. Para obtener más información, vea Asociar con procesos en ejecución con el depurador de Visual Studio.
Para depurar una aplicación Win32 de C o C++
Abra el proyecto en Visual Studio.
En el menú Depurar, elija Iniciar.
Depure con las técnicas descritas en Primer vistazo al depurador.
Para establecer manualmente una configuración de depuración
En el menú Ver, haga clic en Páginas de propiedades.
Haga clic en el nodo Propiedades de configuración para abrirlo, si no está abierto aún
Seleccione General y establezca el valor de la fila Resultado en Depurar.
Abra el nodo C/C++ y seleccione General.
En la fila Depurar, especifique el tipo de información de depuración que el compilador va a generar. Entre los valores que podría elegir se incluye Base de datos de programa (/Zi) o Base de datos de programa para Editar y continuar (/ZI).
Seleccione Optimización y, en la fila Optimización, seleccione Deshabilitada (/0d) en la lista desplegable.
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. 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. Es probable que características como la ejecución paso a paso muestren puntos de interrupción y puntos de ejecución incorrectos.
Abra el nodo Enlazador y seleccione Depuración. En la primera fila Generar, seleccione Sí (/DEBUG) en la lista desplegable. Siempre establezca este valor cuando depure.
Para más información, vea Configuración del proyecto para una configuración de depuración de C++.