![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
вопросы по winsock [D7, WinXP]
nok6600 © (2004-08-10 12:24:00)1). как мне сделать таймаут?, ну например...
[code]
Connect(FSocket, SockAddrIn, SizeOf(SockAddrIn))
recv
send
recv
....
[/code]
ну вот как мне проверять таймаут между этими командами, например я отправил запрос серваку, а ответа нет пять минут - явно дело не годится. Я в растерянности.
2). А как заставить winsock не сразу принимать или отправлять (send ; recv) а ожитать например 10 секунд и потом только отправлять / принимать? Я пробовал sleep, но всё приложение "подвисает", не подходит.
3). Как определить что у меня ip адрес или адрес вида super.domain.com?
Пробовал:
[code]
iaddr := inet_addr(PChar('localhost.host.com'));
if iaddr <=0 then begin
[/code]
но странно то, что он и некоторые айпишки делает "iaddr<=0". Странно.
Digitman (2004-08-10 12:36:00) [1]
> отправил запрос серваку, а ответа нет пять минут - явно
> дело не годится
а если пол-ответа пришло в период тайм-аута, а еще пол-ответа не уложилось в тайм-аут - эту ситуацию как ты намерен интерпретировать ?