Delphi 2009
Hallo zusammen,
ich betreibe einen Web-Server mit Shops von Kunden.
Ein Kunde möchte nun ein Programm für das Einstellen von Produkten haben.
Problem:
Das Programm muss die
IP des Servers haben.
Im lokalen Netz ist das kein Problem aber wie bekomme ich es hin, dass das Programm auf dem Kundenrechner, die
IP bekommt?
Folgendes habe ich gefunden:
Delphi-Quellcode:
function GetIPAddress(const HostName: string): string;
var
R: Integer;
WSAData: TWSAData;
HostEnt: PHostEnt;
Host: string;
SockAddr: TSockAddrIn;
begin
Result := '';
R := WSAStartup($0101, WSAData);
if R = 0 then
try
Host := HostName;
if Host = '' then
begin
SetLength(Host, MAX_PATH);
GetHostName(@Host[1], MAX_PATH);
end;
HostEnt := GetHostByName(@Host[1]);
if HostEnt <> nil then
begin
SockAddr.sin_addr.S_addr := Longint(PLongint(HostEnt^.h_addr_list^)^);
Result := inet_ntoa(SockAddr.sin_addr);
end;
finally
WSACleanup;
end;
end;
procedure Tf_hauptform.Button1Click(Sender: TObject);
begin
Label2.Caption := GetIPAddress('google.de');
end;
Leider bleibt Label2 leer.
Kann mir jemand einen Tipp geben wie ich das Problem lösen kann?
Vielen Dank für die Hilfe.
LG
Roland