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

Вниз

Корректное завершение программы.   Найти похожие ветки 

 
Daniel   (2004-05-05 16:33) [0]

При обнаружении ошибки или при вводе неверного пароля нужно корректно закрыть программу, то есть так, чтобы вызвались Form.Destroy всех форм.
После Application.Terminate надо всегда ставить Exit, потому что сам метод terminate только отсылает QuitMessage и из процедуры выхода не происходит.
Есть ли более корректные способы завершения программы?


 
panov ©   (2004-05-05 16:35) [1]

Application.MainForm.Close;


 
Daniel   (2004-05-05 16:41) [2]

panov ©   (05.05.04 16:35) [1]

O! Сэнкс. Я только хотел написать, что остальные формы не знают о главной :)))

 Сюда же вопрос №2:
 а если приложение "бесформенное"? ExitProcess?


 
panov ©   (2004-05-05 16:42) [3]

А если без форм, то программа должна выполнить последний оператор и закончиться.
Также в люб ой момент можно использовать процедуру Exit.


 
Palladin ©   (2004-05-05 16:51) [4]

точнее halt


 
Vlad Oshin ©   (2004-05-05 16:54) [5]


> halt(0), раз сам завершаешь и считаешь это корретным


 
Daniel   (2004-05-05 17:03) [6]

А если это происходит в MainForm.OnCreate, то Application.MainForm.Close; вызывает AccessViolation! Не пойму почему.
 И как тогда действовать? Ведь если просто написать Close, то:

if Application.MainForm = Self then Application.Terminate
<C> VCL


 
VMcL ©   (2004-05-05 17:44) [7]

>>Daniel  (05.05.04 17:03) [6]

PostQuitMessage(...)
?


 
Daniel   (2004-05-05 21:16) [8]

VMcL ©   (05.05.04 17:44) [7]

 Да ведь application.terminate только и делает, что PostQuitMessage() вызывает. Поэтому приходится после application.terminate всегда Exit писать. Вот я и спрашиваю о других методах.


 
Jack128 ©   (2004-05-05 21:23) [9]


> Поэтому приходится после application.terminate всегда Exit
> писать.
а что это так сложно??


 
Mim1 ©   (2004-05-05 21:23) [10]

> А если это происходит в MainForm.OnCreate, то Application.
> MainForm.Close; вызывает AccessViolation!

MainForm.Release


 
Drakon ©   (2004-05-05 22:57) [11]

Halt



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

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

Наверх




Память: 0.49 MB
Время: 0.025 c
8-1078455124
fidres
2004-03-05 05:52
2004.05.23
Поисковая система


14-1082550292
WebErr
2004-04-21 16:24
2004.05.23
private vs protected


3-1082663773
Mishenka
2004-04-22 23:56
2004.05.23
Связи между таблицами в Database Desktop...


3-1083323866
ViJen
2004-04-30 15:17
2004.05.23
Сложное вычисляемое поле в Interbase


14-1083759377
ele-lena
2004-05-05 16:16
2004.05.23
ImagExpress. Где взять?