Есть большое и сложное (и неаккуратно написанное) приложение. При закрытии одной из форм иногда случается зависание. Опытным путём установлено, что возникают Access Violation. Есть подозрение, что для некоторых объектов удаление вызывается несколько раз (например, сначала непосредственно, а потом вместе с формой, которая является Owner). Захотелось при каждом вызове TObject.Free где-нибудь фиксировать, какой именно объект удаляется, а потом проанализировать последовательность удалений и выявить повторы. Но вот беда, TObject реализован в юните System, который не получится изменить, а модификацию кода в памяти в run-time запрещает Винда. Есть какие-нибудь соображения, как это можно сделать? А то что-то не хочется сидеть под отладчиком и просматривать кучу срабатываний, составляя список руками.
Уважаемые авторы вопросов! Большая просьба сообщить о результатах решения проблемы на этой странице. Иначе, следящие за обсуждением, возможно имеющие аналогичные проблемы, не получают ясного представления об их решении. А авторы ответов не получают обратной связи. Что можно расценивать, как проявление неуважения к отвечающим от автора вопроса.
Если вы заметили орфографическую ошибку на этой странице, просто выделите ошибку мышью и нажмите Ctrl+Enter. Функция может не работать в некоторых версиях броузеров.