Главная страница
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.023 c
14-41923
Style
2003-10-20 13:10
2003.11.13
Товарищи программеры простите меня за DelphiChallenge :(


3-41020
Vick
2003-10-15 11:16
2003.11.13
Variant - неизвестный тип для ClientDataSet


4-42328
jonni
2003-09-04 15:55
2003.11.13
RegisterCalssEx


3-41037
Alex_x
2003-10-15 11:03
2003.11.13
HELP !!! Автономная работа в Midas через DCOM


3-40794
Vemer
2003-10-19 19:34
2003.11.13
Inner Join в Interbase