GetIP from HostName

Filipe35 Messages postés 470 Date d'inscription vendredi 14 novembre 2003 Statut Membre Dernière intervention 23 octobre 2007 - 5 août 2005 à 23:20
Filipe35 Messages postés 470 Date d'inscription vendredi 14 novembre 2003 Statut Membre Dernière intervention 23 octobre 2007 - 8 août 2005 à 10:05
Bonjour à tous

J'ai une question, j'ai l'adresse d'un site htttp://www.ogametut.free.fr
mais l'ip de ce dernier change souvent,et j'aimerais bien faire une fonction de ce type

GetIP(htttp://www.ogametut.free.fr) : string; => renvoi l'ip

j'ai bien chercher sur le forum, mais helas, soit la page indiquée n'existait plus, soit une partie du code ne marchait pas

Je précise que j'ai delphi 7, et que j'aimerais utiliser le moin possible de composants.

Si vous avez une réponse, d'avance merci.

Filipe

ps: Ogametut.free.fr est un exmple je précise.

1 réponse

Filipe35 Messages postés 470 Date d'inscription vendredi 14 novembre 2003 Statut Membre Dernière intervention 23 octobre 2007 1
8 août 2005 à 10:05
J'ajoute Winsock dans les Uses

mais ce code ne marche toujours pas,

function HostEntAddress(const HostEnt: PHostEnt; const Index: Integer): TInAddr;
var P : ^PInAddr;
Q : PInAddr;
I : Integer;
begin
LongInt(Result.S_addr) := LongInt(INADDR_NONE);
if not Assigned(HostEnt) then
exit;

Assert(HostEnt^.h_addrtype = AF_INET, 'IP addresses required');
Assert(HostEnt^.h_length = Sizeof(TInAddr), 'IP addresses required');

P := Pointer(HostEnt^.h_addr_list);
if not Assigned(P) then
exit;
Q := P^;
I := 0;
While Assigned(Q) and (I < Index) do
begin
Inc(P);
Inc(I);
Q := P^
end;
if Assigned(Q) then
Result := Q^;
end;

function IPAddressStr(const Address: TInAddr): String;
begin
Result := PChar(inet_ntoa(Address));
end;


procedure TForm1.Button1Click(Sender: TObject);
var
HostEnt : pHostEnt;
index : integer;
ip : string;
begin
HostEnt := GetHostByName('http://www.ogametut.free.fr');
ip := IPAddressStr(HostEntAddress(HostEnt, Index));
showmessage(ip);

end;
0