Обнаружение локального 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;
Другие вопросы по тегам