Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.03.05;
Скачать: CL | DM;

Вниз

Перехват закрытия приложения?   Найти похожие ветки 

 
ZbarKiy   (2006-02-02 17:45) [0]

Как перехватить закрытие собственного приложения?
P.S. FormClose(Query) не предлагать.


 
TUser ©   (2006-02-02 18:36) [1]

> Как перехватить закрытие собственного приложения?

В Source проекта написать нужный код, защитив через try ... finally

Ловить WM_CLOSE(QUERY) для главной формы.


 
GuAV ©   (2006-02-02 18:37) [2]


> P.S. FormClose(Query) не предлагать.

Почему FormClose(Query) не подходит ?


 
Gero ©   (2006-02-02 18:41) [3]

У приложения нет понятия «закрытие». Если по каким-то причинам не подходит отлов закрытия главной формы, более четко излагай вопрос.


 
ZbarKiy   (2006-02-03 10:10) [4]

Дело обстоит так. На FormClose(Query) стоит отслеживание на закрытие формы ( да! И вот еще что, на событие FormCreate вписан не большой код
ShowWindow(Application.Handle,SW_HIDE) - одним словом она не видна)
В принципе по оканчанию работы Window она выполняет все необходимые задачи возложенные на событие FormClose(Query), но при вызове диспетчера задач и далее завершение процесса на событие  FormClose(Query) она не попадает. Ну в двух словах пока все.


 
TUser ©   (2006-02-03 10:17) [5]

Через диспетчер - оно никуда может не попасть, т.к. система может прибить выполнение приложения совсем. Система посылает приложению WM_CLOSE, а если не закрывается - прекращает выполнение любых команд приложения и вытирает его из памяти. На то и придумано, чтобы повисшее выкидывать - тут уж ничего не сделать.


 
Комбинатор   (2006-02-03 10:18) [6]

Так и не понял почему не можешь  FormCloseQuery использовать.

Переопределяй WinProc... лови WM_CLOSE в ней....главное не забуть в конце inherited))


 
kaZaNoVa ©   (2006-02-03 10:34) [7]

по сабжу ..  FormCloseQuery поможет, но от TerminateProcess НИЧЕГО не спасёт .. так как эта функция не спрашивает ничего . .а просто убивает ...


 
Комбинатор   (2006-02-03 11:06) [8]

Можно частично защитить процесс добавив привилегии (спасёт от деспетчера), но c Debug привилегиями убьётся молча (Far убьёт тока так).
Можно ещё при создании процесса в нём создать рабочий процесс и потерять на него ссылку убив родительский, но )))) Wind-a не закроется тогда)))



Страницы: 1 вся ветка

Текущий архив: 2006.03.05;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.028 c
3-1136835239
Rust007
2006-01-09 22:33
2006.03.05
Как загрузить Acess с паролем в Delphi


1-1138915522
guitarist
2006-02-03 00:25
2006.03.05
заполнение форм в IE


1-1138789069
FreeAdvisor
2006-02-01 13:17
2006.03.05
Заголовок сообщения на языке по умолчанию ОСи


2-1139838199
Gizza
2006-02-13 16:43
2006.03.05
Запуск файлов без winexec и ShellExecute...


15-1139811873
Некто
2006-02-13 09:24
2006.03.05
Линзы DVD/CD-приводов