40 Stimmen

Ist es möglich, Erweiterungen für den Debugger von Delphi zu schreiben?

Ich weiß, dass es eine API zur Erstellung von Erweiterungen für Delphi gibt. Ich verwende das GExperts-Paket und verschiedene JVCL-Experten häufig. Aber ich habe noch nie irgendwelche Erweiterungen für den Debugger gesehen. Es wäre zum Beispiel sehr schön, wenn man Viewer für verschiedene Objekte registrieren könnte, anstatt sie im Inspektor untersuchen zu müssen. (Ein Formular mit einem Bild-Steuerelement, das ein TImage anzeigt, zum Beispiel, oder ein Gitter, das den Inhalt eines Datensatzes anzeigt).

Gibt es APIs, mit denen man den Delphi-Debugger auf diese Weise erweitern kann?

EDIT: Dies war nicht verfügbar, als ich die Frage schrieb, aber Delphi 2010 bietet eine Möglichkeit, dies zu tun.

17voto

Khan Punkte 186

Im ToolsAPI.pas-Quellcode gibt es einige API-Schnittstellen für das Debugging. Mit dieser API können Sie informiert werden, wenn ein Debugging-Ereignis aufgetreten ist, Informationen über Haltepunkte erhalten, welcher Prozess gerade debuggt wird usw. Aber es scheint keine Unterstützung für Variablen oder deren Werte zu geben. Es gibt also keine einfache Möglichkeit, Ihre Anforderung ohne hässliche Hacks zu implementieren.

4voto

Moritz Beutel Punkte 1921

Einfache Debugger-Visualisierer können mit den von der OTA bereitgestellten Evaluierungsschnittstellen implementiert werden. (Beispiele für Debugger-Visualisierer finden Sie unter aquí y aquí .)

Eine tiefere Integration in den Debugger ist ebenfalls möglich (ich habe z.B. eine kleine Erweiterung für C++Builder geschrieben, die es dem Debugger ermöglicht, die tatsächlichen Objekte hinter einer Schnittstelle auszuwerten) - aber wie Khan schon sagte, muss man, um eine solche Integration zu erreichen, auf einige schmutzige Hacks zurückgreifen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X