Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

вопросы по 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]


> отправил запрос серваку, а ответа нет пять минут - явно
> дело не годится


а если пол-ответа пришло в период тайм-аута, а еще пол-ответа не уложилось в тайм-аут - эту ситуацию как ты намерен интерпретировать ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо