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

Вниз

Проблемі с ON E: exception   Найти похожие ветки 

 
Babenko Alexey   (2003-07-31 13:51) [0]

Почему не работает следующий код

var i: Integer;
begin
 i := 0;
 TRY
   i := i div I;
 EXCEPT ON E: exception
   do begin
     ShowMessage( "Exception: " + E.Message);
   end;
 END;
end;
Ну перехватил он ошибку, а толку мало. Всё равно прога вывалилась.

хотя такой пашет нормально
var i: Integer;
begin
 i := 0;
 TRY
   i := i div I;
 EXCEPT
   ShowMessage( "Exception: " );
 END;
end;
Проблема в последнем примере в том, что я не знаю какая ошибка произошла.


 
mdw ©   (2003-07-31 14:03) [1]

Подключи модуль Err.pas


 
Babenko Alexey   (2003-07-31 19:56) [2]

Не ві не поняли. Всё у меня подключенно. Exceptions перехватываются, я о них узнаю. Но если я пишу как в 1 варианте, то после перехвата прога благополучно вываливается. Если же как во 2 варианте, то всё класно работает, но я не могу прописать в логи какая именно ошибкка произошла


 
mdw ©   (2003-07-31 21:14) [3]

Да, действительно. Причем не работает и просто
EXCEPT
   ON E: exception do;
END;
скорее всего это ошибка, к автору нужно обращаться.


 
Кладов   (2003-08-01 21:24) [4]

Вообще, когда я делал err.pas, строчку

 ExceptClsProc := @GetExceptionClass;

просто закомментарил, и подписал:

 // {-} ExceptClsProc is used only in "except on" implementation. If error code
 // is catched by another way, it is not needed.

т.е. почему-то решил на тот момент, что on E: Exception не потребуется. Потом было изменение, которое позволяло обработать on exception для случая собственного raise, а процедуру GetExceptionClass то ли не нашел как подправить, то ли просто забыл про это закомментаривание.

Короче, возьмите исправленный kol_err.zip, теперь можно обрабатывать on exception, как написано было в описании, и теперь не только для собственных возбуждений по raise.



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

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

Наверх




Память: 0.45 MB
Время: 0.042 c
8-1076785354
Grinder
2004-02-14 22:02
2004.04.11
параллельная работы media player


14-1079518420
ИМХО
2004-03-17 13:13
2004.04.11
"Зимние Олимпийские виды спорта"


1-1082824349
Namo
2004-04-24 20:32
2004.04.11
как использовать UNICODE


8-1070913573
Walrus
2003-12-08 22:59
2004.04.11
Мигание при перерисовке


1-1082304018
Tack83
2004-04-18 20:00
2004.04.11
Главное меню. Alt-акселераторы.





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский