Kendi İp Adresiniz ( İnternet )
Uses WinSock;
Function LocalIP : string; 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); Result := ''; GetHostName(Buffer, SizeOf(Buffer)); phe :=GetHostByName(buffer); if phe = nil then Exit; pptr := PaPInAddr(Phe^.h_addr_list); I := 0; while pptr^ <> nil do begin result:=StrPas(inet_ntoa(pptr^^)); Inc(I); end; WSACleanup; end;
// Kullanım
procedure TForm1.Button1Click(Sender: TObject); begin showmessage('İp Adresiniz : ' + LocalIP); end;
// İp Adresi İle Ad Sorgulama
uses winsock;
function IPAddrToName(IPAddr : String): String; var SockAddrIn: TSockAddrIn; HostEnt: PHostEnt; WSAData: TWSAData; begin 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 begin result:=StrPas(Hostent^.h_name) end else begin result:=''; end; end;
//Kullanım
Forma 2 tane edit 1 tane buton
procedure TForm1.Button1Click(Sender: TObject); begin edit2.Text := IPAddrToName(edit1.text); end;
// Kaynak : Kodbank
|