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

Вниз

Как при создании исключения передать код ошибки?   Найти похожие ветки 

 
Mishenka   (2003-11-02 17:51) [0]

Создаётся исключение потомок EAbort с помощью raise. Как в except передавать не текстовое сообщение об ошибки с помощью Скуфе, а числовой код?


 
default ©   (2003-11-02 17:55) [1]

на крайняк, число в строковом предствавлении сложно перевести в "обычное" число?


 
Юрий Федоров ©   (2003-11-02 18:23) [2]

конструктор переписал? С передачей кода?
Свойство код завел ?
Дальше просто кастишь в Except под нужный класс


 
Mishenka   (2003-11-02 18:54) [3]

Нет. Просто создал класс без всяких конструкторов.
type
EMaskError=class(EAbort)
end;

Там у EAbort вроде кроме Create есть ещё метод CreatRes, он вроде передаёт числа, только как их потом в exception"e прочитать?


 
Palladin ©   (2003-11-03 02:16) [4]

Ну да, вроде бы числа, но внимание вопрос! Что означают эти числа?
Ответ см. в справке.


 
Slym ©   (2003-11-03 05:59) [5]

type
EMaskError=class(Exception)
private
FCode:integer;
public
constructor Create(const Msg: string;Code:integer=0);override;
property Code:read FCode;
end;

constructor EMaskError.Create(const Msg: string;Code:integer=0);override;
begin
FCode:=Code;
inherited Create(Msg);
end;

Пример:
try
except
on e:EMaskError do
if e.Code=1 then exit
end


 
Романов Р.В. ©   (2003-11-03 07:39) [6]

А чем Get/SetLastError не нравится?



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

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

Наверх




Память: 0.47 MB
Время: 0.022 c
14-41912
Gorlum
2003-10-21 13:57
2003.11.13
NAV2003


1-41316
Anonim-777
2003-10-30 23:01
2003.11.13
Из initialization


3-41012
Павел
2003-10-16 08:19
2003.11.13
Проблема с QRMemo


3-41101
denmin
2003-10-23 10:10
2003.11.13
Замучился!


14-42027
Checist [root]
2003-10-16 16:25
2003.11.13
Исключение, блин