Вниз
Скачать: CL | DM;

NMHTTP, помогите разобраться с исключениями   Найти похожие ветки 

← →
GobliNGuT   (2003-01-09 10:07) [0]

Попытался создать простенькую программу висящую в терее и проверяющая коннект до сайта (к примеру почтового).
Вопрос собственно состоит в том, что при ConnectionFailed вызывается обработчик OnFailed, а после него вызывается сразу исключение.
Метод OnError у компонента есть, но он объялен в private и
соответственно мне его не изменить.
Подскажите, как я могу сделать так чтобы исключение не возникало.
Думаю что его надо каким-то образом убить в OnFailed. Пытался
использовать GetLastError и SetLastError. Ничего не получается.
Заранее спасибо!


← →
Mischka ©   (2003-01-09 11:13) [1]

Вариант: сделай наследник компонента, и в нем убей метод onError, т.е. чтоб он ничего не делал :)


← →
GobliNGuT   (2003-01-10 01:38) [2]

Так не интересно, интересно разобраться с исключениями на таком уровне, что бы я мог их не только вызавать но и убирать когда они мне не нужны ... Надеюсь еще варианты будут? Но и на этом спасибо!


← →
Mischka ©   (2003-01-10 06:21) [3]

Может, я чего не допонял. Но если там вызывается ИСКЛЮЧЕНИЕ, то его наверняка можно перехватить в блоке try ... except


← →
GobliNGuT   (2003-01-10 18:17) [4]

Дело в том что через Try ... Except не получится... так как исключение возникает внутри компонента и генерируется оно тоже там... есть подозрение что в обработчике события OnError...


← →
GobliNGuT   (2003-01-11 01:14) [5]

Дело в том что через Try ... Except не получится... так как исключение возникает внутри компонента и генерируется оно тоже там... есть подозрение что в обработчике события OnError...


← →
Rouse_ ©   (2003-01-11 01:29) [6]

Вам же предложили правильный вариант

type TMyHTTP = class(TNMHTTP);
private
procedure OnError(исходников нет тут сам напишешь); override;
end;

procedure TMyHTTP.OnError();
begin
//inherited не ставим
end;

Все

Желаю успехов


← →
Malder ©   (2003-01-11 12:33) [7]

>NM HTTP, помогите разобраться с исключениями

>и проверяющая коннект до сайта (к примеру почтового).

А если тебе вообще надо проверить, жив ли сервер, не проще ли использовать пинг ?


← →
Mischka ©   (2003-01-11 12:34) [8]

А если все-таки хочешь, чтоб onError иногда срабатывал можно написать так:

procedure TMyHTTP.onError();
begin
if ICanDoThis then inherited
end;

:)



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
14-87672
Roger
2003-02-11 11:43
2003.02.27
Непонятки с dbf


1-87474
sidor
2003-02-19 01:24
2003.02.27
Password


1-87542
Udjin
2003-02-14 11:37
2003.02.27
работа с указателями


9-87238
KA_
2002-09-19 13:08
2003.02.27
Двумерный векторный движок


1-87456
Live_Aus_Berlin
2003-02-18 20:36
2003.02.27
как из delphi можно изменить атрибуты файла




   Наверх