Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.27;
Скачать: 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 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.015 c
1-87462
kpo
2003-02-18 22:00
2003.02.27
Как


1-87411
Guerrillero
2003-02-17 17:51
2003.02.27
Вывод текста в TreeView


1-87372
shodan
2003-02-17 17:33
2003.02.27
Сообщение программы


1-87537
НАА
2003-02-15 13:14
2003.02.27
как изнать работает ли еще приложение вызванное exec()


3-87329
alexander_ua
2003-02-10 17:38
2003.02.27
Блокировка записи в таблице