Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.035 c
7-1082103065
Ruslan
2004-04-16 12:11
2004.05.23
Как отследить изменение в конфигурации компьютера?


14-1083160290
copyr25
2004-04-28 17:51
2004.05.23
Back2Life v. either 1.0 or 1.01


6-1080730866
tRiNEX
2004-03-31 15:01
2004.05.23
Перехват данных.


1-1084277129
kot_phg
2004-05-11 16:05
2004.05.23
Как с OLE вытащить данные


7-1081509968
Wistler
2004-04-09 15:26
2004.05.23
Как узнать количество страниц отправленных на принтер





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский