Інструменти для формування звітів про помилки, такі як Eurekalog або madExcept. або помічники по налагодженню, такі як JclDebug можуть реєструвати себе як постачальники і повертати трасування стека при виникненні помилок. Давайте випробуємо в дії безкоштовну бібліотеку JEDI Code Library (JCL) (останню версію бібліотеки можна завантажити тут). Щоб властивість StackTrace автоматично почало повертати стек викликів, встановіть бібліотеку собі на комп'ютер і просто підключіть юніт JclDebug в свій проект:
Ось простий приклад, де я підключив юніт JclDebug і зберігаю в текстовий файл трасування стека будь-якої помилки, яка сталася в програмі.
Після виконання прикладу в файл stacktrace.txt додасться наступний стек викликів:
Кому-то це кількість інформації здасться надмірною, а кому-то захочеться додати чогось ще. У прикладі нижче, я продемонструю, як створити свого постачальника використовуючи юніт JclDebug.
В результаті в файл stacktrace.txt додасться наступна інформація.
І на завершення хочу сказати, що зберігаючи трасування стека, наприклад, в файл журналу, ви набагато спростите собі пошук несправностей в програмі надалі.