Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

как узнать IP адрес ? [D5, Win95/98]


shark ©   (2003-08-29 10:37:00) 

вот например ктонить запускает прогу на своём компе , а она ему ево IP адрес выводит.
Вопрос: как зделать такую прогу ?


opexspb   (2003-08-31 23:42:00) [1]

Выдаст все IP, т.е. если есть локалка и глобальня сети, то их будет два.


opexspb   (2003-08-31 23:39:00) [2]

procedure TForm1.Button1Click(Sender: TObject);
type
TaPInAddr = Array[0..10] of PInAddr;
PaPInAddr = ^TaPInAddr;
var
phe: PHostEnt;
pptr: PaPInAddr;
Buffer: Array[0..63] of Char;
I: Integer;
GInitData: TWSAData;
begin
//Инициализация сокетов
WSAStartup($101, GInitData);

//Получаем имя локального компьютера (хоста)
GetHostName(Buffer, SizeOf(Buffer));

//Получаем указатель на хост
phe := GetHostByName(buffer);
if phe = nil then Exit;

//Получаем указатель на массив адресов.
pPtr := PaPInAddr(phe^.h_addr_list);
I := 0;

//Перечисляем все адреса
while pPtr^[I] <> nil do
begin
//Вывести адрес
TEdit(FindComponent("Edit"+IntToStr(i+1))).Text:=inet_ntoa(pptr^[I]^);
Inc(I);
end;

//Закрываем сокет
WSACleanup;
end;


Jeer   (2003-08-29 11:20:00) [3]

Как спросил, так и ответили.
Ответ, кстати, работающий:))


shark   (2003-08-29 10:54:00) [4]

??? =(


Jeer   (2003-08-29 10:49:00) [5]

NуMыHейTуTиPи1.LыocalIйPук


Наверх

Титульная страница Поиск, карта сайта Написать письмо