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

Вниз

TidHTTP прервать по таймауту   Найти похожие ветки 

 
ford ©   (2009-12-08 11:48) [0]

Здравствуйте!
скачиваю страницы сайта, используя компонент TIdHTTP из Indy
иногда сайт отвечает но ничего не шлет, или выслал часть страницы и более никакого отклика, и в таком случае
в строке
st.Text:=http.Get(SrcList[i]);
программа просто зависает
попробовал установить свойство ReadTimeout в 30000 (т.е. ждать 30секунд), но как я понял оно срабатывает только при соединении с сайтом, т.е. если сайт хоть что то ответил то этот таймаут не сработает.

Подскажите, как прервать выполнение Get по истечению определенного таймаута?


 
clickmaker ©   (2009-12-08 11:56) [1]

> но как я понял оно срабатывает только при соединении с сайтом

это ConnectTimeout


 
ford ©   (2009-12-08 12:03) [2]


> это ConnectTimeout

ConnectTimeOut нету такого :(
есть только метод Connect(ATimeout:Integer=-1);

если ReadTimeout это таймаут процесса чтения из сокета, то почемуж он тогда не отваливается по истечению. Я пробовал дождаться, но после 15 минут ожидания просто сделал Ctrl+f2 или в IDE он не срабатывает?


 
clickmaker ©   (2009-12-08 12:42) [3]

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


 
Сергей М. ©   (2009-12-08 14:13) [4]


> ford


Вместо Indy dозьми на вооружение Synapse и не мучайся



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

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

Наверх




Память: 0.47 MB
Время: 0.01 c
2-1260359005
Xmen
2009-12-09 14:43
2010.01.31
Проверка компа.


3-1233829749
interandry
2009-02-05 13:29
2010.01.31
Помогите реализовать!!!


15-1259443816
Юрий
2009-11-29 00:30
2010.01.31
С днем рождения ! 29 ноября 2009 воскресенье


2-1260200531
Drowsy
2009-12-07 18:42
2010.01.31
Как правильно завершить программу без появления главного окна


4-1228146698
Пётр
2008-12-01 18:51
2010.01.31
Список окон Alt+Tab