![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Исключительные ситуации при работе с NMHTTP [D5, D6, Win2k]
Сергей © (2003-01-30 16:49:00)Подскажите, как обрабатывать исключительные ситуации при работе с NMHTTP.Get. В частности, возникает сообщение ESockError: 10054 Connection was reset by peer. При этом try...except не работает, и сообщение OnFailure не вызывается. Как его обработать, чтобы программа не вываливалась?
Chubais (2003-01-31 09:00:00) [1]
> Так вот Error не выскакивает. Вместо него вылетает обшибка
> RTL:
> Connection was reset by peer.
ну дык значить в ГЕТЬ исключение обрабатывается
> программа должна работать в автономном режиме и сама бороться
> с ошибками
найди обработку исключения в ГЕТЬ и порежь ее
Сергей (2003-01-30 20:31:00) [2]-> Chubais
код примерно такой:
try
NMHTTP1.Get("www.yandex.ru");
except
Application.MessaпeBox("Error", "Error", 0);
end;
Application.MessaпeBox("Succeed", "Succeed", 0);
Так вот Error не выскакивает. Вместо него вылетает обшибка RTL:
Connection was reset by peer.
Ошибка возникает редко, но все-таки программа должна работать в автономном режиме и сама бороться с ошибками, а не пугать юзера.
Chubais (2003-01-30 17:39:00) [3]
> При этом try...except не работает,
значит не там поставил
smok_er (2003-01-30 17:36:00) [4]Я обратил внимание на то, что NMHTTP (другими компонентами от NM не пользовался) конкретно глючит. У меня к примеру был такой случай... Делал систему автоапдейта на работе и при выполнении Get вылетат Access Violation. Через несколько попыток избавиться от этого выяснилось, что был установлен слишком маленький таймаут (был 2 сек., после установки 5 стало все ОК)
Так что разумнее использовать либо ICS либо Indy.