Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Сети > IP входящего трафика


Автор: bus 29.4.2006, 01:34
необходимо при скачивании данных из интернета узнать IP источника данных, либо имя домена. Можно ли сделать эт о средствами WinSock или библиотеки IPHelper ? 

Автор: Snowy 29.4.2006, 07:24
Вообще-то для того, чтобы что-то скачать, нужно установить соединение.
А, чтобы его установить, нужно,как минимум, знать адрес и порт.
Так что исходные данные не ясны. Как так получилось, что ты что-то качаешь, а адрес тебе не известен?
Сделать конечно можно. Просто неясны исходные данные. 

Автор: bus 29.4.2006, 10:19
Возможно я написал немного некорректно. Предположим, я что то загружаю с сайта www.allofmp3.com. Как средствами Dilphi узнать имя этого доменя или его IP ? 

Автор: vood 29.4.2006, 15:31
Код

function HostToIP(Name: string; var Ip: string): Boolean;  
var  
  wsdata : TWSAData;  
  hostName : array [0..255] of char;  
  hostEnt : PHostEnt;  
  addr : PChar;  
begin  
  WSAStartup ($0101, wsdata);  
  try  
    gethostname (hostName, sizeof (hostName));  
    StrPCopy(hostName, Name);  
    hostEnt := gethostbyname (hostName);  
    if Assigned (hostEnt) then  
      if Assigned (hostEnt^.h_addr_list) then begin  
        addr := hostEnt^.h_addr_list^;  
        if Assigned (addr) then begin  
          IP := Format ('%d.%d.%d.%d', [byte (addr [0]),  
          byte (addr [1]), byte (addr [2]), byte (addr [3])]);  
          Result := True;  
        end  
        else  
          Result := False;  
      end  
      else  
        Result := False  
    else begin  
      Result := False;  
    end;  
  finally  
    WSACleanup;  
  end  
end;  



Добавлено @ 15:32 
Name название хоста(www.allofmp3.com) 
Ip переменная в которую сохраняеться значение 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)