Форум: "Начинающим";
Текущий архив: 2006.12.10;
Скачать: [xml.tar.bz2];
Внизчто то не уничтожилось :( Найти похожие ветки
← →
One_More_Slon © (2006-11-20 12:13) [0]Господа, подскажите, пожалуйста, есть ли возможность отследить объекты созданные приложением и увидеть какие из них не уничтожились после завершения работы приложения.
Проблема следующая:
После завершения работы моей ocx от нее остается что-то, что вызывает run time error при закрытии всего приложения под отладкой.
Если не под отладкой, то просто держит файл осх и его нельзя удалить, изменить до закрытия всего приложения.
← →
Barloggg (2006-11-20 12:17) [1]ну, лог-файл может помочь. особенно если ради каждой записи открывать и закрывать файл.
сделай в каждой процеуре такие скобки
{$IFDEF UseLOG}
здесь код записи
{$ENDIF}
и при включенном {$DEFINE UseLOG}
будет запись - выключил этот код даже не компилируется.
← →
One_More_Slon © (2006-11-20 14:16) [2]Че то я не понял что ты имеешь ввиду
← →
Джо © (2006-11-20 14:25) [3]Попробуй погонять под альтернативными менеджерами памяти. Например CheckMem или FastMM. Последний (в несколько урезанной версии) является штантным МП в BDS2006.
← →
Barloggg (2006-11-20 15:24) [4]я имел ввиду просто веди лог. что ты создаешь, что уничтожаешь. потом в текстовом файле ручками подсчитаешь что к чему и может быть даже "где".
а остальное это лишь реализация.
Менеджер памяти лично меня не впечатлил. показывает лишь сам факт протечки, или я не понял как им правильно пользоваться.
← →
kami © (2006-11-20 21:37) [5]FastMM4 и MemProof. Отлично дополняют друг друга.
← →
Kolan © (2006-11-20 21:53) [6]> Менеджер памяти лично меня не впечатлил.
Конечно, действительно если он пишет что не уничтожился экземпляр:TMySpecialReportManager
, то вспомнить где это создано никак...
ЗЫ
Классная штука в BDS встроена пользуюсь постоянно.
← →
Джо © (2006-11-21 01:13) [7]> [4] Barloggg (20.11.06 15:24)
> Менеджер памяти лично меня не впечатлил. показывает лишь
> сам факт протечки, или я не понял как им правильно пользоваться.
Оттого, видимо, и "не впечатлил", что не понял, как пользоваться. CheckMem в большинстве случаев корректно показывает место в программе, где была выделена память (и не освобождена). Рекоммендую все-таки научиться им пользоваться, иногда полезно, особенно на чужих исходниках :)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.12.10;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.045 c