| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Отлов исключительных ситуаций |
| Автор: mspuz 23.5.2006, 12:05 |
| Проблема в следующем - есть клевая штука Application.OnException, но она работает только в приложениях, имеющих форму. А как мне её использовать енту штуку в консольном приложении? Или есть альтернатива? |
| Автор: Snowy 23.5.2006, 12:16 |
| try .. except/finally |
| Автор: mspuz 23.5.2006, 12:21 |
| Snowy, Да это-то я знаю, но есть ошибки, которые я не могу отловить, ну не предусмотрел я их и что тогда??? А тут такая удобная штука, неужели ничего нет для консолей??? |
| Автор: Snowy 23.5.2006, 12:32 |
| Ставь весь код в глобальный try .. except. В except делай обратно вызов главной процедуры. Добавлено @ 12:33 В консольных приложениях нет глобального управляющего объекта. Поэтому некому управлять - делай ручками. |
| Автор: Демо 23.5.2006, 13:51 | ||
Дополню предыдущий ответ примером:
(Из Help). |
| Автор: Yanis 23.5.2006, 20:33 | ||
Есть. Нужно переназначить обработчик исключений. На примере думаю станет ясно:
|
| Автор: Демо 23.5.2006, 20:54 |
| Yanis, Это для TApplicaion. |
| Автор: Yanis 23.5.2006, 20:56 |
С чего это? |
| Автор: Демо 23.5.2006, 20:57 |
| Хотя работает-) Добавлено @ 20:58 Да ни с чего это...-) Не дочитал HElp-) |
| Автор: Yanis 23.5.2006, 21:02 |
Потому, что это перехватчик для исключительных ситуаций. И от TApplication он никак не зависит, на сколько мне известно |
| Автор: Dynamic 25.5.2006, 14:53 |
| <OFFTOP> Yanis, поздравляю с 1000-м сообщением! </OFFTOP> |
| Автор: Rennigth 25.5.2006, 16:08 | ||
| mspuz, у джидаев (JEDI) есть реализованые штуки для таких целей... модуль называется JclHookExcept там нужно что-то вроде:
по идее должна подойти |
| Автор: Rennigth 25.5.2006, 16:27 | ||
поправочка:
|