uses
winsock;
function getlocalip: string;
const wsver = $101;
var
wsadata: twsadata;
p: phostent;
buf: array [0..127] of char;
begin
result := '';
if wsastartup(wsver, wsadata) = 0 then begin
if gethostname(@buf, 128) = 0 then begin
p := gethostbyname(@buf);
if p <> nil then result := inet_ntoa(pinaddr(p^.h_addr_list^)^);
end;
wsacleanup;
end;
end;
Пользуйтесь на здоровье!