Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Завершение приложения после исключительной ситуации [D7, XP]


programmist87 ©   (2007-05-11 23:16:00) 

В программе сгенерировал исключительную ситуацию:

raise Exception.Create('...');

Нужно чтобы после генерации своего исключения приложение завершилось. Но как я понял, следующий за этими операторами исходный текст игнорируется. А при нажатии в сгенерированном окне исключения кнопки ОК приложение автоматически не завершается. Как в таком случае автоматически завершить приложение?


{RASkov}   (2007-05-11 23:52:00) [1]

> [0] programmist87 ©   (11.05.07 23:16)

А может и не надо ее(искл ситуацию) генерить? Вместо генерации показал мессагу, что кирдык мне и закрыл прогу.....


Sergey Masloff   (2007-05-11 23:26:00) [2]

try
except
 on e : MyException do
   Закрываю приложение


DrPass   (2007-05-11 23:26:00) [3]


> Но как я понял, следующий за этими операторами исходный
> текст игнорируется

Для того, чтобы исполнить какой-либо код независимо от того, произошло исключение или нет, используй блок try...finally. Для "глобального" отлова исключений есть событие Application.OnException


Kolan   (2007-05-11 23:25:00) [4]

try
 …
 raise Exception.Create('…');
except
 Close; //Завершение.
end;  


Еще можно посмотреть компонент TApplicationEvents


Наверх

Титульная страница Поиск, карта сайта Написать письмо