Compartir a través de


Navegar con IntelliTrace

Este tema solo atañe a Visual Studio 2010 Ultimate.

Cuando usa el depurador de Visual Studio, las ventanas del depurador muestran una instantánea del estado de la aplicación en un momento concreto. Cuando usa IntelliTrace, puede ver el estado de la aplicación en diferentes momentos. IntelliTrace graba el estado de la aplicación en puntos predefinidos durante una sesión de depuración.

Al depurar con IntelliTrace, puede navegar hasta cualquier punto donde se recopiló información de depuración. Al navegar hasta un nuevo punto en IntelliTrace, la ventana de código fuente muestra el código fuente donde se produjo el evento. Al mismo tiempo, la ventana Pila de llamadas del depurador y otras ventanas del depurador se actualizan para mostrar el contexto donde se produjo el evento.

En este tema se describen los métodos que utiliza IntelliTrace para navegar por el historial recopilado de la aplicación.

En este tema

  • La vista Eventos de IntelliTrace

  • La vista Llamadas

  • El medianil de navegación

  • Buscar en el historial de IntelliTrace

La vista Eventos de IntelliTrace

La vista Eventos de IntelliTrace es la vista predeterminado de la ventana IntelliTrace, que se acopla de forma predeterminada con Explorador de soluciones y Team Explorer.Los eventos de IntelliTrace se recopilan siempre que IntelliTrace esté habilitado. Por tanto, puede usar esta vista durante cualquier sesión de IntelliTrace.

Vista de eventos de diagnóstico de la ventana Historial de depuración

En el modo de depuración, la vista Eventos de IntelliTrace muestra una lista de todos los eventos recopilados por IntelliTrace durante la sesión de depuración. Los eventos recopilados se especifican en el cuadro de diálogo Opciones. Para obtener información acerca de cómo se especifica qué eventos se recopilan, vea Recopilar información de IntelliTrace.

Para navegar al punto en el que se produjo un evento de diagnóstico

  • En la vista Eventos de IntelliTrace, haga clic en el evento al que desea navegar.

    La ventana de código fuente muestra el código fuente del punto donde se produjo el evento, el puntero de instrucción se mueve a dicho punto y las ventanas del depurador se actualizan para mostrar el contexto en el que se produjo el evento.

La vista Llamadas

La vista Llamadas proporciona una manera jerárquica de ver las llamadas de navegación y los eventos de IntelliTrace asociados con ellas.

Vista de pila invertida de la ventana Historial de depuración

A diferencia de los eventos de IntelliTrace, que siempre se recopilan cuando IntelliTrace está habilitado, la información de llamadas solamente se recoge si se habilita Eventos de IntelliTrace e información de llamadas en el cuadro de diálogo Opciones. Para obtener información sobre cómo habilitar esta opción, vea Recopilar información de IntelliTrace.

Para mostrar la vista Llamadas

  • En la barra de herramientas de la parte superior de la ventana IntelliTrace, haga clic en el icono Mostrar Vista de llamadas.

La vista Llamadas muestra una pila de llamadas similar a una versión invertida de la ventana Pila de llamadas del depurador. En la ventana Pila de llamadas, la llamada actual se encuentra en la parte superior. En la ventana Llamadas, se encuentra en la parte inferior.

En la depuración con IntelliTrace, llamada actual hace referencia a la llamada que era actual en el contexto de tiempo que se consulta. No es necesariamente la llamada actual en tiempo real.

La vista Llamadas muestra, con sangría aplicada bajo la llamada actual, una lista de las llamadas realizadas a partir de la llamada actual y los eventos de IntelliTrace asociados con la llamada actual.

Para navegar a otra llamada desde la llamada actual

  • En la lista de llamadas que aparecen bajo la llamada actual con sangría aplicada, haga doble clic en la llamada a la que desea navegar.

    La vista Llamadas se actualiza para mostrar que la llamada en la que hizo doble clic es ahora la llamada actual. La ventana de código fuente, el puntero de instrucción y las ventanas del depurador se actualizan para mostrar el estado de la aplicación en la nueva llamada actual.

Para navegar a un sitio de llamada dentro de la llamada actual

  • Haga clic en una llamada de la lista de llamadas con sangría aplicada bajo la llamada actual.

    No haga doble clic en la llamada. Si hace doble clic, navegará a la llamada y no al sitio de llamada.

    En la ventana de código fuente, el puntero de instrucción se desplaza al sitio de llamada. La ventana Pila de llamadas no cambia ya que no se ha cambiado de llamada.

Para navegar a un evento de IntelliTrace dentro de la llamada actual

  • Haga clic en un evento de IntelliTrace que aparezca bajo la llamada actual.

    En la ventana de código fuente, el puntero de instrucción se desplaza al sitio de llamada.

El medianil de navegación

El medianil de navegación es otra herramienta de navegación que solamente está disponible si ha habilitado Eventos de IntelliTrace e información de llamadas en el cuadro de diálogo Opciones. El medianil de navegación aparece a un lado de la ventana de código fuente, entre el medianil de depuración estándar y el margen. El medianil de depuración estándar es la tira vertical donde aparecen el puntero de instrucción actual y los iconos de punto de interrupción.

Puede usar el medianil de navegación tanto en la depuración en directo como en la depuración con IntelliTrace. El color del medianil de navegación cambia para indicar el modo en que se encuentra. El color predeterminado de la depuración en directo es gris claro. En la depuración con IntelliTrace, el color predeterminado es gris oscuro.

El medianil de navegación se muestra de forma predeterminada. Sin embargo, no aparece si no se recopilan métodos ni parámetros, si IntelliTrace está desactivado o si se ha deshabilitado en el cuadro de diálogo Opciones. Si el medianil de navegación está desactivado y desea volver a activarlo, vea Cómo: Habilitar o deshabilitar el medianil de navegación.

Medianil de navegación

El medianil de navegación contiene los siguientes iconos de navegación, tal como se muestra en la ilustración anterior. Observe que Volver a sitio de llamada y Entrar son comandos iguales y opuestos, tal como lo son Ir a evento anterior e Ir a siguiente evento.

  • Volver a sitio de llamada devuelve el puntero de instrucción y el contexto de depuración al punto en que se llamó a la función o el método actual. Si trabaja en modo de depuración en directo, este comando inicia la depuración con IntelliTrace.

  • Entrar avanza el puntero de instrucción y el contexto de depuración a la función actualmente resaltada. Este comando solo está disponible cuando se depura con IntelliTrace. Entrar y Volver a sitio de llamada se desplazan en direcciones opuestas.

  • Ir a llamada o evento de IntelliTrace anterior devuelve el puntero de instrucción y el contexto de depuración a la última llamada o evento. Si trabaja en modo de depuración en directo, este comando inicia la depuración con IntelliTrace.

  • Ir a llamada o evento de IntelliTrace siguiente avanza el puntero de instrucción y el contexto de depuración a la siguiente llamada o evento para el que existen datos de IntelliTrace. Este comando solo está disponible cuando se depura con IntelliTrace.

  • Ir a modo real recupera la depuración en directo en el punto donde se inició la depuración con IntelliTrace.

  • Establecer aquí el contexto del depurador aparece en cada marco de la pila de llamadas actual. Haga clic en él para establecer el contexto de depuración en el marco de la llamada donde aparece.

También se puede tener acceso a estos iconos, salvo Establecer aquí el contexto del depurador, desde el menú IntelliTrace, anidado en el menú Depurar, o desde la barra de herramientas IntelliTrace, si decide mostrarla. Establecer aquí el contexto del depurador solamente aparece en el medianil de navegación.

Buscar en el historial de IntelliTrace

Si la opción Eventos de IntelliTrace e información de llamadas está habilitada, IntelliTrace permite buscar cualquiera instancia grabada de una llamada. Cuando localiza la instancia en la que está interesado, puede sincronizar el contexto de IntelliTrace con dicha llamada y usar la ventana IntelliTrace y las ventanas de depurador normales para observar el estado de la aplicación durante esa instancia de la llamada.

Hay dos maneras de buscar una instancia de una llamada. Una manera consiste en hacer clic en una línea de código fuente desde la que se realiza una llamada. La otra consiste en hacer clic dentro del cuerpo del método o la función al que se llama.

Para encontrar una instancia de una llamada

  1. En una ventana de código fuente

    • Haga clic con el botón secundario en una línea de código desde la que se realiza una llamada y, a continuación, haga clic en Buscar esta línea en IntelliTrace, o bien

    • Haga clic con el botón secundario del mouse dentro del cuerpo de un método o función y, a continuación, haga clic en Buscar este método en IntelliTrace.

    Los resultados de la búsqueda aparecen en un medianil horizontal en la parte superior la ventana de código fuente, tal como se muestra en la siguiente ilustración. Los resultados de la búsqueda indican el número de instancias que se han encontrado en IntelliTrace.

  2. En el medianil de resultados de la búsqueda, puede hacer clic en Ir a resultado siguiente, Ir a último resultado, Ir a resultado anterior o Ir a primer resultado para navegar a los resultados.

    Al navegar hasta una instancia de la llamada en el medianil de resultados de la búsqueda, la ventana Llamadas de IntelliTrace se sincroniza automáticamente con dicha instancia de la llamada.

Hay algunas restricciones en la búsqueda que debería considerar:

  • Buscar este método en IntelliTrace no funciona a menos que el archivo de proyecto que contiene el método esté abierto en Visual Studio.

  • Buscar esta línea en IntelliTrace no devuelve resultados precisos si la línea es una salida de método.

Vea también

Tareas

Cómo: Habilitar o deshabilitar el medianil de navegación

Conceptos

Recopilar información de IntelliTrace

Acelerar la depuración de código mediante IntelliTrace

Depurar errores no reproducibles con IntelliTrace