Search code examples
delphiindydelphi-xetraceroute

how i can trace an IP using delphi


i need trace the route of an ip, actually i am using the TIdTraceRoute indy component from the idTraceRoute unit.

   IdTraceRoute1:= TIdTraceRoute.Create(Self);
   IdTraceRoute1.ResolveHostNames:= True;
   IdTraceRoute1.ReceiveTimeout:= 5000;
   IdTraceRoute1.OnReply:= TraceRoute;

    IdTraceRoute1.Host:= 'www.google.com';
    IdTraceRoute1.Trace;


procedure TForm1.TraceRoute(ASender: TComponent;
  const AReplyStatus: TReplyStatus);
begin
   Memo1.Lines.Add(AReplyStatus.FromIpAddress);
end;

but always return.

0.0.0.0
0.0.0.0
0.0.0.0
0.0.0.0
0.0.0.0
0.0.0.0

exist another way of trace an ip maybe using windows api or using another indy component?

actually i am using delphi-xe and Windows 7.


Solution

  • I just wrote a entry on my blog, wich can help you.

    Building a traceroute application with IP geolocation using delphi