Dzień dobry,
Chciałbym odczytać poprawny adres lokalny IP komputera na którym uruchomiłem aplikację. Problem w tym, że odczytuje mi on adres IP przypisany do VirtualBox Host-Only Ethernet Adapter.
Korzystam z takiego kodu:
uses Winsock;
procedure TForm1.FormCreate(Sender: TObject);
var
wVersionRequested:WORD;
wsaData:TWSAData;
begin
wVersionRequested:=MAKEWORD(1, 1);
WSAStartup(wVersionRequested, wsaData);
end;
procedure TForm1.IPCheck2Click(Sender: TObject);
Var
p:PHostEnt;
s:array[0..128] of char;
p2:pansichar;
begin
GetHostName(@s, 128);
p:=GetHostByName(@s);
Memo1.Lines.Add(p^.h_Name);
p2:=iNet_ntoa(PInAddr(p^.h_addr_list^)^);
Memo1.Lines.Add(p2);
IPCheck2.Caption:=p2;
end;
Poproszę o informację w jaki sposób odczytać właściwy fizyczny lokalny adres IP.
Na zakończenie dodam, dla utrudnienia dodam, że płyta główna ma wbudowane dwie karty sieciowe.