|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
10.10.2007, 19:11 | #1 |
Пользователь
Регистрация: 08.09.2007
Сообщений: 15
|
idHTTP и ошибка Connection reset by peer.
INDY 10.5.1 (Delphi6 sp3)
Есть цикл; try s:=IdHTTP.Get(Link); except on E: Exception do begin ...Lines.Add(E.Message); ....?.... end; end; При отключении интернета (сети) во время работы программы выпадается ошибка: Socket Error # 10054 Connection reset by peer. При подключении сети, ошибка та же, ничего не считывается. При запуске программы без сети ошибка Socket Error # 10054, а Connection reset by peer. отсутствует Как разглючить idHTTP, что-то надо написать где знак вопрос? |
11.10.2007, 10:37 | #2 |
Старожил
Регистрация: 13.12.2006
Сообщений: 3,859
|
http.CheckForDisconnect
CheckForGracefulDisconnect
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи |
11.10.2007, 16:41 | #3 |
Пользователь
Регистрация: 08.09.2007
Сообщений: 15
|
http.CheckForDisconnect - нет такого в idHTTP.
CheckForGracefulDisconnect - это Определяет, разъединил ли пэр изящно.(promt) Пока GET не используется, пишет "Not Connected", раз считал, уже ничего не пишет. Другие, кто использует GET, у Вас при переподключении интернета, тоже программа заглючивается, или Вам пофигу. ) |
11.10.2007, 17:00 | #4 |
Пользователь
Регистрация: 08.09.2007
Сообщений: 15
|
Опять сам задаю, сам отвечаю.
Ошибку Connection reset by peer убирает процедура IdHTTP.Disconnect; Значит, если вместо знака вопроса в программе вставить вот это, всё нормально продолжает работать. try IdHTTP.Disconnect; except end; или так, чтобы выполнить IdHTTP.Disconnect один раз. try if pos('Connection reset by peer',E.Message)>0 then IdHTTP.Disconnect; except end; Последний раз редактировалось tebeen; 11.10.2007 в 17:18. |
22.01.2010, 15:38 | #5 |
Форумчанин
Регистрация: 23.03.2009
Сообщений: 334
|
А как это в idIRC лечится?
Прост такая же проблема. Код:
Вобщем если инет обрывается (визически XD), то вылетает такая лшибка, затем инет появляется, но при попытки подключиться (или послать любую команду серву) повторно вылазиет это-же окно и ничего не происходит. Последний раз редактировалось ZBEP; 22.01.2010 в 18:55. |
23.01.2010, 20:43 | #6 |
Форумчанин
Регистрация: 23.03.2009
Сообщений: 334
|
Люди я конечно понимаю, что это наверно слишком глупый вопрос и т.д. но я не могу понять, как решить эту проблему!
Кто знает направьте в нужном направлении хотя бы! |
19.12.2011, 10:25 | #7 | |
Регистрация: 23.04.2011
Сообщений: 5
|
Цитата:
try s:=IdHTTP.Get(Link); except on EIdException do begin Lines.Add('Error каккой-то там....'); end; end; Последний раз редактировалось Baal80; 19.12.2011 в 10:33. |
|
19.12.2011, 17:46 | #8 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
22.01.2012, 10:44 | #9 | |
Регистрация: 23.04.2011
Сообщений: 5
|
И это тоже. Но просто try...finally или try...except НЕ ЛОВЯТ исключения компонентов Indy. Во всяком случае в Delphi 7. Сам когда-то столкнулся с этим.
Цитата:
Код:
|
|
22.01.2012, 11:04 | #10 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
жмем Continue/Run(в зависимости от версии), и переходим к обработчику. а раньше в Инди был прикол что либа сама показывала сообщение об ошибке, в наглую. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
SocketError 10061. Connection refused | Lanist | Работа с сетью в Delphi | 11 | 17.07.2008 14:47 |
idHTTP | DeDoK | Общие вопросы Delphi | 5 | 05.06.2008 22:45 |
Connection timed out при вызове IdSMTP1.Connect(10000); | dimon000 | Работа с сетью в Delphi | 3 | 11.01.2008 22:49 |
Connection timed out - что это? | илья too | Работа с сетью в Delphi | 4 | 25.08.2007 19:07 |