![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Механизм работы Application.Terminate [D7, WinXP]
Жбан © (2004-10-07 10:38:00)Добрый день! Уважаемые мастера, объясните почему после выполнения Application.Terminate выполняются идущие за ним строки кода. Простейший пример: В обработчике OnClick кнопки пишем такие строки:
Application.Terminate;
WinExec('Calc', 1);
... и блокнот запускается, хотя раньше должно приложение закрыться.
КаПиБаРа (2004-10-07 10:56:00) [1]Жбан (07.10.04 10:52) [2]
OnCloseQuiery
procedure TApplication.Terminate;
begin
if CallTerminateProcs then PostQuitMessage(0);
end;
Как работает PostQuitMessage объяснять надеюсь не надо?
Жбан (2004-10-07 10:52:00) [2]Что нужно использовать halt или exit, я дошел экспериментальным путем. Но ведь по логике после terminate возникает событие OnCloseQuiery, потом OnClose и приложение должно закрыться (не будем говорить о секции Finalize).
КаПиБаРа (2004-10-07 10:43:00) [3]Жбан (07.10.04 10:38)
F1 - Application.Terminate, Halt
===========================
Не путайте теплое с мягким.
===========================