Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.01;
Скачать: [xml.tar.bz2];




Вниз

Application.Terminate хотелось бы выполнить своевременно... 


Duce   (2002-03-19 17:39) [0]

Уважаемые, чей разум легок словно гелий а поток мысли подобен
Ниагарскому водопаду!

Что имеем: Delphi 6, Винный 2000 и дикое желание субжа:-).
При запуске приложения из *.DPR создаем одну из форм и вызываем ее метод, в которой проводим некие проверки внутри
try...exception и если случается Exception, то пытаюсь выполнить
Application.Terminate и подкрепляю ProcessMessages.
НО! Из метода выскакивает назад в код DPR, и продолжает его отра-
батывать, не смотря ни на что. Как результат - некрасивое окно
с белым крестом в красном круге от Виндов.

Как бы это перебороть?



Юрий Зотов   (2002-03-19 17:46) [1]

Application.Terminate не сработает до вызова Application.Run. ProcessMessages тоже. Используйте Halt.



Johnmen   (2002-03-19 18:10) [2]

>Юрий Зотов © : Application.Terminate сработает по любому !



Юрий Зотов   (2002-03-19 18:39) [3]

Вот так категорично? Ну-ну...

Вынужден повторить: Application.Terminate не сработает ДО вызова Application.Run.

Пройдите отладчиком и убедитесь - только ПОСЛЕ. Иначе и не может быть, поскольку Application.Terminate посылает WM_QUIT, а цикл выборки сообщений запускается в Application.Run, не раньше.



Duce   (2002-03-19 18:44) [4]

То Юрий Зотов: Все верно, стоит мне внимательней читать хелп...
Я из любопытства попробовал там же, где шлю WM_QUIT, сделать
тут же Run - некорректно работает...



Андрей Сенченко   (2002-03-19 19:39) [5]

>> Johnmen © (19.03.02 18:10)
>> Application.Terminate сработает по любому !

Не стоит, ИМХО, столь рьяно доказывать очевидно неправильные вещи. Вы уже не первый раз садитесь в лужу по полной программе именно с такими заявлениями.
Если будет время, специально для Вас подберу пяток случаев, в которых Application.Terminate не отработает никак и еще пяток - в которых он вызовет жестокий Access Violation.





Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.01;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.034 c
1-82              boa                   2002-03-19 06:54  2002.04.01  
Как сделать, чтобы курсор постоянно отображался в TEdit, TMemo


14-282            Вадим                 2002-02-17 22:58  2002.04.01  
Visual C++


1-213             Вася-Х                2002-03-20 11:54  2002.04.01  
Импорт из Word


14-305            Lord Vader            2002-02-20 04:59  2002.04.01  
RUNDLL32.EXE - Перезагрузить компьютер в режиме MS-DOS


1-130             Zool                  2002-03-21 20:46  2002.04.01  
Как создать свой класс