Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  4 646

•  TDictionary Custom Sort  6 650

•  Fast Watermark Sources  6 430

•  3D Designer  9 368

•  Sik Screen Capture  6 755

•  Patch Maker  7 147

•  Айболит (remote control)  7 157

•  ListBox Drag & Drop  6 012

•  Доска для игры Реверси  97 605

•  Графические эффекты  7 341

•  Рисование по маске  6 629

•  Перетаскивание изображений  5 498

•  Canvas Drawing  5 878

•  Рисование Луны  5 602

•  Поворот изображения  5 106

•  Рисование стержней  3 679

•  Paint on Shape  2 909

•  Генератор кроссвордов  3 807

•  Головоломка Paletto  3 059

•  Теорема Монжа об окружностях  3 865

•  Пазл Numbrix  2 547

•  Заборы и коммивояжеры  3 262

•  Игра HIP  2 232

•  Игра Go (Го)  2 166

•  Симулятор лифта  2 545

•  Программа укладки плитки  2 181

•  Генератор лабиринта  2 681

•  Проверка числового ввода  2 329

•  HEX View  2 666

•  Физический маятник  2 300

 
скрыть

Получение IP-адреса



Автор: 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.