Debugging-Unterstützung
Mithilfe von „Memory View“ (Speicheransicht) und „Step Filter“ (Schrittfilter) in Visual Assist verkürzen Sie das Debugging von nativem C/C++ erheblich.
Adressauflösung
Entschlüsseln Sie Text-Only-Adressen und -Aufruflisten.
Sie können ein Debugging für natives C/C++ ausführen, wenn die Debugging-Informationen in Textform statt als Programmabbild vorliegen. „Address Resolver“ (Adressauflösung) liest EXE-, DLL- und PDB-Dateien und ermittelt die Symbole, die mit den Textversionen virtueller Adressen verknüpft sind.
![Address Resolver](/Presentation/WholeTomato/Assets/Images/features/debugAssistance/resolver.png)
PDB Explorer
Debuggen Sie nativen Code, wenn der Quellcode nicht verfügbar ist.
Sie können Symbole prüfen und danach in Modulen aus ausführbarem Code suchen, unabhängig davon, ob er gerade ausgeführt wird. Suchen Sie nach Symbolen in EXE- und DLL-Dateien so wie bei einer Suche in einer Lösung.
![PDB Explorer](/Presentation/WholeTomato/Assets/Images/features/debugAssistance/explorer.png)
VA-Speicheransicht
Führen Sie ein Debugging von Absturz-Dumps mit beschädigten Aufruflisten durch.
Mithilfe von „VA Memory View“ (VA-Speicheransicht) können Sie einen Absturz-Dump nachverfolgen, in dem die Aufrufliste nicht von Visual Studio entschlüsselt werden kann, entweder aufgrund Beschädigung oder wegen eines Versions-Builds.
Die VA-Speicheransicht enthält eine Aufrufliste mit Arbeitsspeicherdressen, die auf oder in die Nähe des aktuellen Listenzeigers zeigen.
![VA Memory View](/Presentation/WholeTomato/Assets/Images/features/debugAssistance/VAMEMVIEW.png)
Sie können in der VA-Speicheransicht nach bestimmten Adressen suchen.
![Search the VA Memory View by specific addresses.](/Presentation/WholeTomato/Assets/Images/features/debugAssistance/MemViewSearchAd.png)
Die VA-Speicheransicht akzeptiert auch komplexere Ausdrücke wie z. B. ‚ESP+8‘ oder ‚dies‘.
![The VA Memory View also accepts more complex expressions.](/Presentation/WholeTomato/Assets/Images/features/debugAssistance/VAMEMVIEW2.png)
Geben Sie eine Disassemblierungsansicht für eine Speicheradresse aus der VA-Speicheransicht ein.
![Enter a disassembly view for a memory address from within the VA Memory View](/Presentation/WholeTomato/Assets/Images/features/debugAssistance/vaMemoryViewDissasembly.png)
VA-Schrittfilter
Überspringen Sie automatisch Methoden.
Wenn Sie natives C/C++ prüfen, können Sie direkt zu Methoden springen, ohne die Methoden einer Argumentliste verfolgen zu müssen.
Beispielsweise können Sie zu MethodStdString() gehen, ohne GetLoopCount() oder die String-Klasse zu verfolgen:
![](/Presentation/WholeTomato/Assets/Images/features/debugAssistance/stepFilterMethodStdString.png)
Erstellen Sie in dem Toolfenster, das geöffnet wird, wenn Sie das Debugging starten, Filter für die Methoden, die Sie überspringen möchten.
![](/Presentation/WholeTomato/Assets/Images/features/debugAssistance/stepFilterWindowDebugEvents.png)
Verwenden Sie integrierte Filter, um häufig genutzte Methoden von Standardbibliotheken zu überspringen, inklusive der Methoden in der String-Klasse.
![](/Presentation/WholeTomato/Assets/Images/features/debugAssistance/stepFilterBuiltInFilters.png)
Weisen Sie Filter für Instanziierungen von Funktionsschablonen und Methoden von Vorlagenklassen zu, um einen bestimmten Instanziierungstyp oder um alle Typen zu überspringen.
![](/Presentation/WholeTomato/Assets/Images/features/debugAssistance/stepFilterTemplate.png)
Filter sind für nachfolgende Debugging-Sitzungen gültig. Sie können für alle Lösungen gültig und in einem gemeinsam genutzten Verzeichnis gespeichert sein.