Показать сообщение отдельно
  #8  
Старый 14.04.2011, 20:37
-=Virus=- -=Virus=- вне форума
Прохожий
 
Регистрация: 28.05.2009
Сообщения: 19
Репутация: 10
По умолчанию

Цитата:
Сообщение от NumLock
1:
Код:
function ip: String;
var
  WSAData: TWSAData;
  name: array [0..$ff] of Char;
  HostEnt: PHostEnt;
begin
  Result:='';
  if WSAStartup(MakeWord(2, 2), WSAData)<>0 then Exit;
  if gethostname(name, Length(name))=0 then
  begin
    HostEnt:=gethostbyname(name);
    if HostEnt<>nil then Result:=inet_ntoa(PInAddr(HostEnt^.h_addr_list^)^);
  end;
  WSACleanup;
end;
2:
Код:
function ips: String;
type
  TArrPInAddr = array [0..7] of PInAddr;
  PArrPInAddr = ^TArrPInAddr;
var
  WSAData: TWSAData;
  name: array [0..$ff] of Char;
  HostEnt: PHostEnt;
  ArrPInAddr: PArrPInAddr;
  i: Integer;
begin
  Result:='';
  if WSAStartup(MakeWord(1, 1), WSAData)<>0 then Exit;
  if gethostname(name, Length(name))=0 then
  begin
    HostEnt:=gethostbyname(name);
    if HostEnt<>nil then
    begin
      ArrPInAddr:=PArrPInAddr(HostEnt^.h_addr_list);
      i:=0;
      while ArrPInAddr^[i]<>nil do
      begin
        Result:=Result+StrPas(inet_ntoa(ArrPInAddr^[i]^))+';';
        Inc(i);
      end;
    end;
  end;
  WSACleanup;
end;

Какие модули нужно подключать, что бы компилятор не выдавал ошибки?
Ответить с цитированием