2009-01-16 15 views
40

Wiem, że istnieje interfejs API do tworzenia rozszerzeń Delphi. Często korzystam z pakietu GExperts i różnych ekspertów JVCL. Ale nigdy nie widziałem żadnych rozszerzeń do debuggera. Byłoby miło, na przykład, móc rejestrować widzów dla różnych obiektów, zamiast ich sprawdzać w Inspektorze. (Formularz z formantem obrazu, który wyświetla na przykład obraz lub siatkę, która wyświetla zawartość zestawu danych.)Czy można pisać rozszerzenia do debuggera Delphi?

Czy są jakieś interfejsy API, które umożliwiają rozszerzanie debuggera Delphi w ten sposób?

EDYCJA: To nie było dostępne, gdy pisałem pytanie, ale Delphi 2010 zapewnia sposób na zrobienie tego.

+0

Dobre pytanie :-) 10 przegranych i jedna odpowiedź. –

+1

Zgadzam się. Może Nick Hodges zauważy - myślę, że zwraca uwagę na społeczność. – Argalatyr

+0

Tak, to byłoby miłe. –

Odpowiedz

17

Źródło ToolsAPI.pas zawiera kilka interfejsów API do debugowania. Możesz być informowany o wystąpieniu zdarzenia debugowania, informacji o punktach przerwania, debugowaniu procesu itp. Za pomocą tego interfejsu API. Ale wydaje się, że nie ma wsparcia dla zmiennych lub wartości z nich. Tak więc nie ma prostego sposobu na zrealizowanie zamówienia bez brzydkich hacków.

4

Podstawowe wizualizatory debuggera można zaimplementować za pomocą interfejsów oceny udostępnianych przez OTA. (Przykłady wizualizacje debugera można znaleźć here i here.)

Głębsza integracja debugera jest również możliwa (na przykład, napisałem trochę rozszerzenie dla C++ Builder, które umożliwia debugera do oceny rzeczywistych obiektów za interfejsem) - ale, jak zauważył Khan, aby osiągnąć taki poziom integracji, trzeba uciec się do kilku brudnych hacków.

Powiązane problemy