ОБСУЖДЕНИЕ

Обработка Ondestroy

5 ответов 5,5 тыс.
Автор темы
По событию OnDestroy формы мне необходимо совершить некоторые манипуляции с базой данных. Но при этом, естественно, вылетает ошибка о невозможности этого, т.к. dataset уже закрыт. Как бы обойти препятствие? Нужно именно в Destroy.
 
Почему нужно именно в Destroy? Каковы Ваши специфические действия, которые нельзя выполнить в другом обработчике?


А что что закрыт так оно уже и понятно на OnDestroy...
 
В этом обработчике мне необходимо закрыть дочерние окна, находящиеся в DLL. Хэндлы этих окон находятся в базе. В методе onClose код не срабатывает, тоже лезут ошибки и их природа понятна. Можно, конечно для хранения хэндлов использовать файл, но это не очень удобно.
 
Так вот сходу не обладая полными знаниями по Вашей проблеме посоветовать как решить проблему трудно...

Не совсем понятен алгоритм как у Вас всё работает ... но как мне кажется всегда можно внедрится в нужный момент и произвести свои действия...

А чем конкретно не устраивает OnClose ?

Да и на случай такой .. храните хэндлы окон в своей структруе в памяти ... как мне кажется это не сильно затруднительно...
 
Для: Баламут
beforeclose dataset'а тоже не подходит?
 
Спасибо. Обязательно попробую все варианты. Пока обхожусь просто файлом.