Debugger-Visualisierungen

Aus Appmethod Topics
Wechseln zu: Navigation, Suche

Nach oben zu Anwendungen debuggen - Index


Der Debugger unterstützt nun zwei Arten von Visualisierungen für die Anzeige der Daten in einem benutzerdefinierten Format. Visualisierungen sind immer mit einem bestimmten Datentyp verknüpft. Die Visualisierung TDateTime des Produkts kann beispielsweise nur für Daten des Typs TDate, TTime und TDateTime verwendet werden.

Das Video Debug Visualizer in Appmethod bietet mehrere Informationen über Visualisierungen.

Unterstützung von Debugger-Visualisierungen durch ToolsAPI

Sie können die mit dem Produkt gelieferten Datenvisualisierungen um eigene Visualisierungen ergänzen, indem Sie entsprechende Plug-Ins schreiben. Dabei können Sie festlegen, dass die Visualisierung auf einen bestimmten Datentyp und alle von ihm abgeleiteten Typen angewendet werden soll. Die folgenden Interfaces in ToolsAPI unterstützen die beiden hier beschriebenen Visualisierungsarten:

  • IOTADebuggerVisualizer
  • IOTADebuggerVisualizerValueReplacer
  • IOTADebuggerVisualizerExternalViewer

Visualisierungsarten: Wertersetzung und Externer Viewer

Es gibt zwei Arten von Debugger-Visualisierungen: Wertersetzung und Externer Viewer.

Wertersetzung

Bei dieser Visualisierungsart wird der vom integrierten Evaluator zurückgegebene Wert durch einen Wert ersetzt, der für den Benutzer besser lesbar ist.

Jedem Datentyp kann nur eine Wertersetzungsvisualisierung zugeordnet werden. Wenn für einen Datentyp eine Wertersetzungsvisualisierung festgelegt wurde, werden die Daten automatisch durch die Debugger-Visualisierung verarbeitet. In den Debug-Fenstern ist nicht ersichtlich, dass eine Visualisierung stattfindet. Sie können Visualisierungen aber auf der Seite Visualisierung unter Tools > Optionen nach Bedarf aktivieren und deaktivieren.

TDateTime-Visualisierung

Die Visualisierung TDateTime für Object Pascal und C++ verwendet die Funktion DateTimeToStr aus der Unit SysUtils, um den Double-Wert, der einem TDateTime-Wert entspricht, zu ersetzen. Die folgende Tabelle enthält Beispiele für TDateTime-Werte, die mit der TDateTime-Visualisierung konvertiert wurden. Beachten Sie, dass die von der Visualisierung angezeigten Daten von den Gebietseinstellungen des Systems und der aktuellen Einstellung der globalen Variablen ShortDateFormat und LongTimeFormat abhängig ist.

TDateTime-Wert in Rohform    
(Double)
Von der TDateTime-Visualisierung
erzeugter Wert

2.75

1/1/1900 6:00 Uhr

-1.25

29.12.1899 06:00 Uhr

10894.395833

10/28/1929 9:29:59 Uhr

std::string- und std::wstring-Visualisierung

Die Wertersetzungsvisualisierungen std::string und std::wstring sind nur für C++ vorgesehen. Sie zeigen die Strings automatisch an, d. h. Sie müssen sich nicht mit den Interna der Klasse befassen, um die tatsächlichen String-Werte zu ermitteln.

Externe Viewer

Bei dieser Art von Visualisierung werden die Daten in einem eigenen Fenster (Viewer) angezeigt. Die TStrings/TStringList-Visualisierung zeigt beispielsweise die in einer Liste enthaltenen Strings in einer eigenen Listenansicht an. Ohne Visualisierung zeigt der Debugger die interne Datenstruktur an.

In Fenstern, in denen Visualisierungen verwendet werden können, zeigt das Symbol ExternalVisualizer.bmp an, dass für die Daten eines Feldes ein externer Viewer zur Verfügung steht. Klicken Sie auf den Abwärtspfeil des Symbols ExternalVisualizer.bmp, um die Liste der verfügbaren externen Viewer anzuzeigen und einen Viewer auszuwählen. In den meisten Fenstern können Sie auch mit der rechten Maustaste auf ein Datenelement klicken, und im Kontextmenü den Befehl Visualisierung auswählen.

Interaktion mit Debugger-Visualisierungen

Während des Debuggens einer Anwendung können Sie jede der installierten Debugger-Visualisierungen verwenden. Wenn Debugger-Visualisierungen aktiviert sind:

  • Wertersetzungsvisualisierungen wie TDateTime und c::string/wstring konvertieren die Rohdaten eines bestimmten Typs in ein lesbares Format.
  • Wenn für die Daten eines Feldes Visualisierungen in Form eines externen Viewers verfügbar sind, wird in dem Feld das Symbol ExternalVisualizer.bmp angezeigt. Außerdem steht in den Kontextmenüs der meisten Fenster der Befehl Visualisierung zur Verfügung.

An den folgenden Stellen der IDE können Debugger-Visualisierungen verwendet werden:

  • Fenster Liste Überwachter Ausdrücke
  • Lokale Variablen (Fenster)
  • Debug-Inspektor
  • Auswerten/Ändern (Dialogfeld, Schaltfläche in der Symbolleiste)
  • Evaluator-Kurzhinweise – Wenn Sie während einer Debug-Sitzung mit der Maus auf eine Variable zeigen, werden die von der Visualisierung aufbereiteten Daten in einem Kurzhinweis angezeigt. Voraussetzung dafür ist jedoch, dass Visualisierungen aktiviert sind und eine Visualisierung für den betreffenden Datentyp verfügbar ist. Diese Kurzhinweise stehen für beide Arten von Visualisierungen zur Verfügung.

Sie können bestimmte Visualisierungen durch Auswahl von Tools > Optionen > Debugger-Optionen > Visualisierung aktivieren und deaktivieren.

Siehe auch