Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.06;
Скачать: CL | DM;

Вниз

Как по IP узнать сетевое имя компа.... и наоборот   Найти похожие ветки 

 
Alien   (2003-12-02 07:10) [0]

Как по IP узнать сетевое имя компа.... и наоборот


 
Simon ©   (2003-12-02 20:31) [1]


//============================= Get HostName from IP ===========
function IPAddrToName(IPAddr: string): string;
var
SockAddrIn: TSockAddrIn;
HostEnt: PHostEnt;
WSAData: TWSAData;
begin
if IPAddr="0.0.0.0" then begin IPAddrToName:="чей-то компьютер"; exit end;
if IPAddr="127.0.0.1" then begin IPAddrToName:="петля обратной связи"; exit end;
if copy(IPAddr,1,4)="0.0." then begin IPAddrToName:="компьютер этой сети"; exit end;
if IPAddr="255.255.255.255" then begin IPAddrToName:="огр. широковещание"; exit end;
WSAStartup($101, WSAData);
SockAddrIn.sin_addr.s_addr := inet_addr(PChar(IPAddr));
HostEnt := gethostbyaddr(@SockAddrIn.sin_addr.S_addr, 4, AF_INET);
if HostEnt <> nil then
Result := StrPas(Hostent^.h_name)
else
Result := "";
end;
//============================= Get HostName from IP ============
//============================= Get IP from HostName ============
function GetIPFromHost(const HostName: string): string;
type
TaPInAddr = array[0..10] of PInAddr;
PaPInAddr = ^TaPInAddr;
var
phe: PHostEnt;
pptr: PaPInAddr;
i: Integer;
GInitData: TWSAData;
begin
WSAStartup($101, GInitData);
Result := "";
phe := GetHostByName(PChar(HostName));
if phe = nil then Exit;
pPtr := PaPInAddr(phe^.h_addr_list);
i := 0;
while pPtr^[i] <> nil do
begin
Result := inet_ntoa(pptr^[i]^);
Inc(i);
end;
WSACleanup;
end;
//============================= Get IP from HostName ============



Страницы: 1 вся ветка

Текущий архив: 2004.02.06;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.035 c
1-16366
Mihey
2004-01-23 22:08
2004.02.06
Сохранить регион в файл и загрузить.


1-16310
Volodya_
2004-01-25 12:55
2004.02.06
Popup menu


1-16261
kostya
2004-01-26 11:54
2004.02.06
как добавить progressbar в stringgrid


1-16390
vlv
2004-01-23 13:17
2004.02.06
Как преобразовать scan-код клавиши в символ?


1-16428
AkaSaint
2004-01-22 13:55
2004.02.06
ComboBox, изменяющийся по высоте; Edit с BorderColor