Текущий архив: 2005.07.11;
Скачать: CL | DM;
ВнизПолучение кода ошибки в Indy. Найти похожие ветки
← →
Alexander Panov © (2005-04-06 17:22) [0]Как в Indy получить код ошибки в случае возникновения Exception, конкретно в TIdHTTP:
try
Body :=IdHTTP1.Get("URL");
except
// Как здесь получить код ошибки, например 10065 и пр.?
end;
← →
Eraser © (2005-04-06 17:41) [1]Alexander Panov ©
Сразу такое решение направшивается...
try
...
except
on EZeroDivide do HandleZeroDivide;
А код ошибки там по-моему не во всех исключениях есть...
← →
Eraser © (2005-04-06 17:49) [2]Alexander Panov ©
Нашёл кажись...
должно быть что-то типа
var
ErrorNumb: integer;
...
try
Body :=IdHTTP1.Get("URL");
except
on e: EIdHTTPProtocolException do ErrorNumb := e.ErrorCode;
end;
не уверен насчёт правильности синтаксиса... не помню точно как оформляются on execption блок в секции исключений, но смысл такой!
← →
Alexander Panov © (2005-04-06 17:53) [3]Eraser © (06.04.05 17:49) [2]
Спасибо! Кажется, получается.
Только для Indy9 получается так:on e: EIdHTTPProtocolException do ErrorNumb := e.ReplyErrorCode;
← →
Alexander Panov © (2005-04-06 18:06) [4]Вот только с обработкой в отдельном потоке, увы, проблема...
← →
Eraser © (2005-04-06 18:16) [5]Alexander Panov ©
А какая там может быть проблема...?
← →
Alexander Panov © (2005-04-06 18:17) [6]При ошибке не попадаю в блок ON e: ...
← →
Eraser © (2005-04-06 18:23) [7]Alexander Panov ©
Да уж... как всегда делали делали и в самом интересном месте схалтурили... это кстати не единственный глюк Indy с многопоточностью....
← →
Alexander Panov © (2005-04-06 18:24) [8]Eraser © (06.04.05 18:23) [7]
Жаль, конечно...
Буду думать...
Страницы: 1 вся ветка
Текущий архив: 2005.07.11;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.038 c