Zitat von
DarkItachi:
..und dieser gibt mir immer nur meine LAN
Ip. (Ich bin über W-lan verbunden!)
Aufjedenfall ist es wichtig, dass diese Funktion das schnell prüft... eigentlich so wie Ipconfig.
Hat jemand eine Idee?
Hallo DarkItachi, Du liest nur zufällig eine Adapter
IP aus der Liste, du musst alle lesen.
Delphi-Quellcode:
function IPListFromHost(const HostName: string): string;
type
TaPInAddr = array[0..10] of PInAddr;
PaPInAddr = ^TaPInAddr;
var
phe: PHostEnt;
pptr: PaPInAddr;
i: Integer;
GInitData: TWSAData;
begin
WSAStartup($101, GInitData);
Result := '';
phe := GetHostByName(PChar(HostName));
if phe <> nil then begin
pPtr := PaPInAddr(phe^.h_addr_list);
i := 0;
while pPtr^[i] <> nil do begin
Result := Result + inet_ntoa(pptr^[i]^) + #13#10;
Inc(i);
end;
end;
WSACleanup;
end;
lg. Astat