Вниз
Скачать: 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.034 c
2-1160132776
andrey44
2006-10-06 15:06
2006.10.22
Flat Memory as Dynamic array


15-1159179702
wl
2006-09-25 14:21
2006.10.22
глюки форума?


15-1159461931
Kerk
2006-09-28 20:45
2006.10.22
C++ рулит


15-1159332305
ZeroDivide
2006-09-27 08:45
2006.10.22
SubVersion vs. JEDI VCS


2-1159847702
qp
2006-10-03 07:55
2006.10.22
У кого какие мысли будут?




   Наверх