Вниз
Скачать: CL | DM;

Как узнать IP адрес   Найти похожие ветки 

 
Николас   (2006-05-27 01:43) [0]

Как узнать IP адрес клиента в сервере TCP (на WinSock) зная TSocket при событии FD_Read?


 
Delphi_is_cool ©   (2006-05-27 10:07) [1]

Я думаю что никак ... обычно это делается при подключении клиента(FD_ACCEPT) ...


 
Николас   (2006-05-27 14:48) [2]

неужели нет другова способа? Должен быть :)


 
Delphi_is_cool ©   (2006-05-27 21:04) [3]

...Нету ... )


 
Tsmar   (2006-05-28 13:42) [4]

int recvfrom (
   SOCKET s,  
   char FAR* buf,  
   int len,    
   int flags,  
   struct sockaddr FAR* from,  
   int FAR* fromlen    
  );
юзаешь так

var
addr:TSockAddr;
lenaddr:integer;
...
lenaddr:=SizeOf(addr);
retcount:=recvfrom(Sock,buf,MAX_BUF_LEN,0,addr,lenaddr);
IP:=htonl(addr.sin_addr.S_addr);   <- вот и IP


 
Николас   (2006-05-29 16:31) [5]

Tsmar спасибо, а как теперь преобразовать это число в символьный IP? :)


 
Николас   (2006-05-29 17:21) [6]

Tsmar странно... addr.sin_addr.S_addr  = 0 а lenaddr = 16 после выполнения... почему так? в Accept() нормальная структура получается... а тут пустая..


 
Verg ©   (2006-05-29 21:20) [7]

см. getpeername(...)



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.031 c
6-1148667504
Std
2006-05-26 22:18
2006.10.22
Post + delphi


4-1148422772
LiveSoft
2006-05-24 02:19
2006.10.22
Обратботка своего пункта меню


1-1157830629
AlexeyT
2006-09-09 23:37
2006.10.22
Перетаскивание мышью ScrollBox a


3-1156618095
Deather
2006-08-26 22:48
2006.10.22
База Paradox 7


2-1155621068
Хам
2006-08-15 09:51
2006.10.22
GetWindow




   Наверх