this slowpoke moves

Get Computer Name via IP

uses Winsock

function GetComputerName(IPAddr: String): string;
 var
   SockAddrIn: TSockAddrIn;
   HostEnt: PHostEnt;
   WSAData: TWSAData;
 begin
   WSAStartup($101, WSAData);
   SockAddrIn.sin_addr.s_addr := inet_addr(PAnsiChar(AnsiString(IPAddr))); // <-- IP-Addr nach AnsiString wandeln
   HostEnt := gethostbyaddr(@SockAddrIn.sin_addr.S_addr, 4, AF_INET);
   if HostEnt <> nil then
     Result := string(StrPas(Hostent^.h_name)) // <- Hostname nach String wandeln
   else
     Result := '';
end;
Beispiel :
procedure TForm1.Button1Click(Sender: TObject);
begin
  Edit1.Text := GetComputerName('192.168.1.2');
end;

Keine Kommentare:

Kommentar veröffentlichen

Beliebte Posts

Translate