| Получение IP-адреса 
 
 
Оформил: DeeCo
 Автор: CyANiD От 
            автора: IP можно получить, заUSE'ав компонент TClientSocket или 
            TServerSocket, но это значительно утяжелит ваш Exe'шник. Я предлагаю 
            другой, более рациональный способ 
Host: TLabel;
IPaddr: TLabel;
...
uses Winsock;
...
procedure TForm1.FormCreate(Sender: TObject);
var
  wVerReq: WORD;
  wsaData: TWSAData;
  i: pchar;
  h: PHostEnt;
  c: array[0..128] of char;
begin
  wVerReq := MAKEWORD(1, 1);
  WSAStartup(wVerReq, wsaData);
  {Получаем хост (имя) компа}
  GetHostName(@c, 128);
  h := GetHostByName(@c);
  Host.Caption := h^.h_Name; //Host отображает хост(имя) компьютера
  {Достаем IP}
  i := iNet_ntoa(PInAddr(h^.h_addr_list^)^);
  IPaddr.Caption := i; //Теперь IPaddr отображает IP-адрес
  WSACleanup;
end;Если 
            какие баги лезут, присылайте ваш проект (без Exe) нам  с описанием вашей системы, 
            Delphi и конфигурации. Может у вас вообще баги с Windows 
            Sockets. |