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

Вниз

Почему не работает raise?   Найти похожие ветки 

 
nester ©   (2004-02-28 16:03) [0]

Пишу так

  FReasonPhrase:= "xxxx";
  ....
  raise Exception.Create(e_inout, FReasonPhrase);

Сообщение вылетает нормально, но в описании ошибки пустая строка, а должна быть FReasonPhrase. Модуль err, скачаный отсюда же пару часов назад подключил.


 
Gandalf ©   (2004-02-28 16:33) [1]

FAQ!!! http://kol.mastak.ru/FAQ.htm#29


 
nester ©   (2004-02-28 22:39) [2]

Вы говорите про mckCtrls?
Но я не использую mck ....


 
Gandalf ©   (2004-02-28 22:57) [3]

Обработка исключений к mck не имеет ни какого отношения... это все KOL


 
nester ©   (2004-02-28 23:29) [4]

Вот и я думаю, чем тогда моя реализация отличается от ответа в факе. Спасибо что ответили, но похоже я тормоз редкий, у меня так ниче и не получилось. Давайте я объясню как понял а вы меня поправте.
Во первых у меня ниче не виснет, raise срабатывает без проблемм, все в порядке но...
Системное сообщение не выдает мою строку.
Вот примерно так

raise Exception.Create(e_inout, "cant load");
на это мне выводится сообщение типа Project Loader.exe raised exception with message "" ...
А должен вместо "" выводить "cant load".
в try except его засовывать и потом на On ловить нужный эксепшн и делать MsgOk нужный както ...
Я понимаю что в этом случае прога вывалится, но так и надо.
К тому же в отладке удобно.
Теперь как я понял из фака нужно это сделать.
Вопервых в директиве {$IFNDEF KOL_MCK} объявить mckCtrls, во вторых за ее приделами добвать err.
Это все? или я чего недопонял? или я вообще тормоз на другом повороте?


 
Yury Sidorov   (2004-02-29 14:18) [5]

Сообщение типа Project Loader.exe raised exception with message "..." выдает стандартный обработчик исключений.
Чтобы сообщение было нормальным нужно его переопределить. Вот так он определен в модуле err.pas:


//...

procedure ExceptHandler(ExceptObject: TObject; ExceptAddr: Pointer); far;
begin
 ShowException(ExceptObject, ExceptAddr);
 Halt(1);
end;

//...

ExceptProc := @ExceptHandler;

//...



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

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

Наверх




Память: 0.48 MB
Время: 0.031 c
14-1089582966
ANNIHILATOR
2004-07-12 01:56
2004.08.01
Человек ненавидит то, чего он не понимает...


6-1086283867
VID
2004-06-03 21:31
2004.08.01
Так что же означает результат, возвращаемый SendText() ?


10-1019627903
denis_1
2002-04-24 09:58
2004.08.01
DCOM


1-1089965183
han
2004-07-16 12:06
2004.08.01
почуему в try...finally всегда срабатывает


1-1089818625
DreymanD
2004-07-14 19:23
2004.08.01
Запаковка картинок, содержащихся в листе(TListBox)