Autor Beitrag
Mr.Frisch
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Di 07.03.06 19:16 
Hallo,

ich wundere mich, aber ich habe nichts beim Suchen gefunden.
Wie kann man die IP-Adresse einer Domäne auflösen.
Z.B.
www.MeinPC.de -> 127.0.0.1

Gruß
Basti2k
Hält's aus hier
Beiträge: 2

WIN XP SP2
Delphi 7 Ent.
BeitragVerfasst: Di 07.03.06 20:27 
Hallo,

hatte das selbe Problem...

So gehts:

ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
uses WinSock;

function GetIpAddressByName(const Lines:TStrings; const AHost: String): Boolean;

type
  PPInAddr= ^PInAddr;

var
  WSA: TWSAData;
  HostInfo: PHostEnt;
  Addr: PPInAddr;

begin
  Result:=False;
  if WSAStartUp($101, WSA) = 0 then
  begin
    try
      HostInfo:= getHostByName(PChar(AHost));
      Result:=HostInfo<>nil;
      if Result then
      begin
        Addr:=Pointer(HostInfo^.h_addr_list);
       if (Addr<>nilAND (Addr^<>nilthen     
      begin
          Repeat
            Lines.Add(StrPas(inet_ntoa(Addr^^)) ) ;
            inc(Addr);
          Until Addr^=nil;
        end;
      end;
    finally
      WSACleanup;
    end;
  end;
end;


Und dan einfach einbinden...

ausblenden Delphi-Quelltext
1:
 GetIpAddressByName(Listbox1.Items, 'www.google.de');					


Interesant ist noch das die Funktion True zurück gibt, falls der Aufruf von getHostByName erfolgreich war, also :

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
begin
 if GetIpAddressByName(Listbox1.Items, 'www.google.de'then
   Showmessage('OK')
 else
   ShowMessage('Fehler');
end;


MfG

Basti

Moderiert von user profile iconraziel: Quote- durch Delphi-Tags ersetzt
Mr.Frisch Threadstarter
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Di 07.03.06 20:57 
Hi Basti,

vielen Dank für deine ausführliche Hilfe. Alles läuft wie es soll.