Freigeben über


Navigieren mit IntelliTrace

Dieses Thema gilt ausschließlich für Visual Studio 2010 Ultimate.

Wenn Sie den Visual Studio-Debugger verwenden, wird in den Debuggerfenstern eine Momentaufnahme des Anwendungszustands zu einem bestimmten Zeitpunkt angezeigt. Mit IntelliTrace können Sie den Anwendungszustand zu vielen Zeitpunkten anzeigen. IntelliTrace zeichnet während einer Debugsitzung den Zustand der Anwendung an vordefinierten Punkten auf.

Beim Debuggen mit IntelliTrace können Sie zu jedem Punkt navigieren, an dem Debuginformationen erfasst wurden. Wenn Sie in IntelliTrace zu einem neuen Punkt navigieren, wird im Quellcodefenster der Quellcode angezeigt, in dem das Ereignis aufgetreten ist. Gleichzeitig werden das Debuggerfenster Aufrufliste sowie andere Debuggerfenster mit dem Kontext aktualisiert, in dem das Ereignis aufgetreten ist.

In diesem Thema werden die Methoden beschrieben, mit denen Sie in IntelliTrace durch den erfassten Verlauf der Anwendung navigieren können.

In diesem Thema

  • IntelliTrace-Ereignisanzeige

  • Aufrufansicht

  • Navigationsbundsteg

  • Durchsuchen des IntelliTrace-Verlaufs

IntelliTrace-Ereignisanzeige

Die Ansicht IntelliTrace-Ereignisse bildet die Standardansicht im IntelliTrace-Fenster, das standardmäßig an den Projektmappen-Explorer und den Team Explorer angedockt ist.IntelliTrace-Ereignisse werden stets erfasst, wenn IntelliTrace aktiviert ist. Daher können Sie diese Ansicht während jeder IntelliTrace-Sitzung verwenden.

Fenster "Debugverlauf", Ansicht "Diagnoseereignisse"

Im Debugmodus wird in der Ansicht IntelliTrace-Ereignisse eine Liste aller Ereignisse angezeigt, die während der Debugsitzung von IntelliTrace erfasst wurden. Die erfassten Ereignisse werden im Dialogfeld Optionen angegeben. Weitere Informationen zum Angeben der zu erfassenden Ereignisse finden Sie unter Sammeln von IntelliTrace-Informationen.

So navigieren Sie zu dem Zeitpunkt, zu dem ein Diagnoseereignis aufgetreten ist

  • Klicken Sie in der Ansicht IntelliTrace-Ereignisse auf das Ereignis, zu dem Sie navigieren möchten.

    Im Quellcodefenster wird der Quellcode für den Punkt angezeigt, an dem das Ereignis aufgetreten ist, der Anweisungszeiger wechselt zu diesem Punkt, und Debuggerfenster werden aktualisiert, um den Kontext anzuzeigen, in dem das Ereignis aufgetreten ist.

Aufrufansicht

Die Aufrufansicht bietet eine hierarchische Möglichkeit, Navigationsaufrufe und die diesen Aufrufen zugeordneten IntelliTrace-Ereignisse anzuzeigen.

Fenster "Debugverlauf", Ansicht "Umgekehrter Stapel"

Im Gegensatz zu IntelliTrace-Ereignissen, die stets erfasst werden, wenn IntelliTrace aktiviert ist, werden Aufrufinformationen nur erfasst, wenn Sie im Dialogfeld Optionen die Option IntelliTrace-Ereignisse und Aufrufinformationen aktiviert haben. Informationen zum Aktivieren dieser Option finden Sie unter Sammeln von IntelliTrace-Informationen.

So zeigen Sie die Aufrufansicht an

  • Klicken Sie auf der Symbolleiste oben im Fenster IntelliTrace auf das Symbol Aufrufansicht anzeigen.

In der Aufrufansicht wird ein Aufrufstapel angezeigt, der einer umgekehrten Version des Fensters Aufrufliste für den Debugger ähnelt. Im Fenster Aufrufliste befindet sich der aktuelle Aufruf an erster Stelle. In der Ansicht Aufrufe befindet er sich an letzter Stelle.

Beim Debuggen mit IntelliTrace wird mit aktueller Aufruf der Aufruf bezeichnet, der im von Ihnen angezeigten Zeitkontext aktuell war. Er ist nicht notwendigerweise in Echtzeit aktuell.

Unter dem aktuellen Aufruf wird in der Ansicht Aufrufe eingerückt eine Liste von Aufrufen angezeigt, die vom aktuellen Aufruf und von den diesem zugeordneten IntelliTrace-Ereignissen ausgeführt wurden.

So navigieren Sie zu einem anderen Aufruf des aktuellen Aufrufs

  • In der Liste der eingerückt unter dem aktuellen Aufruf angezeigten Aufrufe doppelklicken Sie auf den Aufruf, zu dem Sie navigieren möchten.

    Die Aufrufansicht wird aktualisiert, um anzuzeigen, dass der Aufruf, auf den Sie gedoppelklickt haben, jetzt der aktuelle Aufruf ist. Das Quellcodefenster, der Anweisungszeiger und das Debuggerfenster werden aktualisiert, um den Zustand der Anwendung für den neuen aktuellen Aufruf anzuzeigen.

So navigieren Sie zu einer Aufrufwebsite innerhalb des aktuellen Aufrufs

  • In der Liste der eingerückt unter dem aktuellen Aufruf angezeigten Aufrufe klicken Sie auf einen Aufruf, der unter dem aktuellen Aufruf angezeigt wird.

    Doppelklicken Sie nicht auf den Aufruf. Durch einen Doppelklick navigieren Sie zum Aufruf statt zur Aufrufsite.

    Im Quellcodefenster wird der Anweisungszeiger auf die Aufrufwebsite verschoben. Das Fenster Aufrufliste wird nicht geändert, da Sie sich noch immer in demselben Aufruf befinden.

So navigieren Sie zu einem IntelliTrace-Ereignis innerhalb aktuellen Aufrufs

  • Klicken Sie auf ein IntelliTrace-Ereignis, das unter dem aktuellen Aufruf angezeigt wird.

    Im Quellcodefenster wird der Anweisungszeiger auf die Aufrufwebsite verschoben.

Beim Navigationsbundsteg handelt es sich um ein weiteres Navigationstool, das nur verfügbar ist, wenn Sie IntelliTrace-Ereignisse und Aufrufinformationen im Dialogfeld Optionen aktiviert haben. Der Navigationsbundsteg wird im Quellcodefenster neben dem Standard-Debuggingbundsteg und dem Rand angezeigt. Der Standard-Debuggingbundsteg bildet den vertikalen Streifen, auf dem der aktuelle Anweisungszeiger und Haltepunktsymbole angezeigt werden.

Sie können den Navigationsbundsteg beim Livedebuggen und auch beim Debuggen mit IntelliTrace verwenden. Die Farbe des Navigationsbundstegs ändert sich mit dem Modus, in dem Sie sich befinden. Die Standardfarbe beim Livedebuggen ist hellgrau. Beim Debuggen mit IntelliTrace ist die Standardfarbe dunkelgrau.

Standardmäßig ist der Navigationsbundsteg eingeblendet. Er wird nicht jedoch angezeigt, wenn keine Methoden und Parameter erfasst werden, wenn IntelliTrace ausgeschaltet ist oder wenn Sie ihn im Dialogfeld Optionen deaktiviert haben. Wenn der Navigationsbundsteg deaktiviert ist und Sie diesen wieder aktivieren möchten, finden Sie entsprechende Informationen unter Gewusst wie: Aktivieren oder Deaktivieren des Navigationsbundstegs.

Navigationsbundsteg

Der Navigationsbundsteg enthält die folgenden Navigationssymbole, wie in der vorherigen Abbildung gezeigt. Beachten Sie, dass Zur Aufrufwebsite zurückkehren und Einzelschritt, genau wie Zum vorherigen Ereignis wechseln und Zum nächsten Ereignis wechseln, gleiche und entgegengesetzte Befehle darstellen.

  • Mit Zur Aufrufwebsite zurückkehren werden der Anweisungszeiger und der Debugkontext zeitlich auf den Punkt zurückgesetzt, an dem die aktuelle Funktion oder Methode aufgerufen wurde. Wenn Sie im Livedebugmodus arbeiten, beginnen Sie mit diesem Befehl das Debuggen mit IntelliTrace.

  • Mit Einzelschritt werden der Anweisungszeiger und der Debugkontext zeitlich auf die derzeit markierte Funktion vorgesetzt. Dieser Befehl ist nur beim Debuggen mit IntelliTrace verfügbar. Mit Einzelschritt und Zur Aufrufwebsite zurückkehren navigieren Sie in entgegengesetzte Richtungen.

  • Mit Zum vorherigen Aufruf oder IntelliTrace-Ereignis wechseln werden der Anweisungszeiger und der Debugkontext zeitlich auf den letzten Aufruf oder das letzte Ereignis zurückgesetzt. Wenn Sie live debuggen, beginnen Sie mit diesem Befehl das Debuggen mit IntelliTrace.

  • Mit Zum nächsten Aufruf oder IntelliTrace-Ereignis wechseln werden der Anweisungszeiger und der Debugkontext zeitlich auf den nächsten Aufruf oder das nächste Ereignis vorgesetzt, für den oder das IntelliTrace-Daten vorhanden sind. Dieser Befehl ist nur beim Debuggen mit IntelliTrace verfügbar.

  • Mit Zum Livemodus wechseln kehren Sie zum Livedebuggen an dem Punkt zurück, an dem Sie begonnen haben, mit IntelliTrace zu debuggen.

  • Debuggerkontext hier festlegen wird in jedem Frame der aktuellen Aufrufliste angezeigt. Klicken Sie darauf, um den Debugkontext auf den Aufrufframe festzulegen, in dem die Option angezeigt wird.

Auf diese Symbole, außer Debuggerkontext festlegen, können Sie auch im Menü IntelliTrace, das unter dem Menü Debuggen geschachtelt ist, oder, sofern angezeigt, auf der IntelliTrace-Symbolleiste zugreifen. Debuggerkontext festlegen wird nur auf dem Navigationsbundsteg angezeigt.

Durchsuchen des IntelliTrace-Verlaufs

Wenn IntelliTrace-Ereignisse und Aufrufinformationen aktiviert ist, können Sie mit IntelliTrace nach beliebigen aufgezeichneten Instanzen eines Aufrufs suchen. Wenn Sie die betreffende Instanz gefunden haben, können Sie den IntelliTrace-Kontext mit diesem Aufruf synchronisieren und dann im IntelliTrace-Fenster und in den regulären Debuggerfenstern den Zustand der Anwendung während dieser Aufrufinstanz beobachten.

Es sind zwei Möglichkeiten verfügbar, nach einer Instanz eines Aufrufs zu suchen. Erstens können Sie auf eine Zeile des Quellcodes klicken, von der ein Aufruf ausgeführt wird. Zweitens können Sie in den Text der aufgerufenen Methode oder Funktion klicken.

So suchen Sie eine Instanz eines Aufrufs

  1. In einem Quellcodefenster.

    • Klicken Sie mit der rechten Maustaste auf eine Codezeile, durch die ein Aufruf ausgeführt wird, und klicken Sie anschließend auf In IntelliTrace nach dieser Zeile suchen. Oder:

    • Klicken Sie mit der rechten Maustaste auf den Text einer Methode oder Funktion, und klicken Sie anschließend auf In IntelliTrace nach dieser Methode suchen.

    Die Suchergebnisse werden oben im Quellcodefenster auf einem horizontalen Bundsteg angezeigt, wie in der folgenden Abbildung gezeigt. In den Suchergebnissen ist die Anzahl der in IntelliTrace gefundenen Instanzen angegeben.

  2. Navigieren Sie im Bundsteg für Suchergebnisse durch die Ergebnisse, indem Sie auf Zum nächsten Ergebnis wechseln, Zum letzten Ergebnis wechseln, Zum vorherigen Ergebnis wechseln oder Zum ersten Ergebnis wechseln klicken.

    Wenn Sie zu einer Aufrufinstanz im Bundsteg für Suchergebnisse navigieren, wird die Aufrufansicht des Fensters IntelliTrace automatisch mit dieser Aufrufinstanz synchronisiert.

Bei der Suche sind einige Einschränkungen zu berücksichtigen:

  • In IntelliTrace nach dieser Methode suchen funktioniert nur, wenn die Projektdatei, die die Methode enthält, in Visual Studio geöffnet ist.

  • Von In IntelliTrace nach dieser Zeile suchen werden keine exakten Ergebnisse zurückgegeben, wenn es sich bei der Zeile um ein Methodenende handelt.

Siehe auch

Aufgaben

Gewusst wie: Aktivieren oder Deaktivieren des Navigationsbundstegs

Konzepte

Sammeln von IntelliTrace-Informationen

Schnelleres Debuggen von Code mit IntelliTrace

Debuggen von nicht reproduzierbaren Fehlern mit IntelliTrace