Обнаружение локального IP-адреса под FireMonkey3
Необходимо определить локальный IP-адрес под FireMonkey3. В версии VCL, я использовал модуль WinSock с методами для него
WSAStartup(...)
gethostname(...)
Одно ограничение: не нужно использовать какую-либо стороннюю библиотеку. Я портирую компоненты ASTA на платформу FireMonkey3 и не хочу делать зависимости между компонентами.
1 ответ
Если вам нужно кроссплатформенное решение, попробуйте использовать Indy и TIdStack.AddLocalAddressesToList
метод включен в IdStack
единица измерения
Попробуйте этот образец
var
AAddresses: TStrings;
begin
AAddresses := TStringList.Create;
try
TIdStack.IncUsage;
try
GStack.AddLocalAddressesToList(AAddresses);
finally
TIdStack.DecUsage;
end;
if AAddresses.Count > 0 then
//do something
finally
AAddresses.Free;
end;
end;