在 Delphi 中,获取所有本地 IP 地址的方法如下:
TIdStack
类获取本地 IP 地址uses
IdStack, IdStackConsts;
function GetLocalIPAddresses: TStrings;
var
Addrs: TIdStackLocalAddresses;
I: Integer;
begin
Result := TStringList.Create;
try
Addrs := TIdStack.Inc(nil).LocalAddresses;
try
for I := 0 to Length(Addrs) - 1 do
begin
Result.Add(Addrs[I].IPAddress);
end;
finally
TIdStack.Dec(Addrs);
end;
except
Result.Free;
raise;
end;
end;
TIdStack
类获取本地 IP 地址和子网掩码uses
IdStack, IdStackConsts;
function GetLocalIPAddressesAndSubnetMasks: TStrings;
var
Addrs: TIdStackLocalAddresses;
I: Integer;
begin
Result := TStringList.Create;
try
Addrs := TIdStack.Inc(nil).LocalAddresses;
try
for I := 0 to Length(Addrs) - 1 do
begin
Result.Add(Format('%s (%s)', [Addrs[I].IPAddress, Addrs[I].SubnetMask]));
end;
finally
TIdStack.Dec(Addrs);
end;
except
Result.Free;
raise;
end;
end;
这两个函数都会返回一个 TStrings
类型的对象,其中包含了本地 IP 地址和子网掩码。您可以根据需要选择其中一个函数来获取所有本地 IP 地址。
领取专属 10元无门槛券
手把手带您无忧上云