3

FireMonkey3 でローカル IP アドレスを検出する必要があります。VCLバージョンでは、ユニットWinSockをメソッドで使用しています

WSAStartup(...)
gethostname(...)

1 つの制限:サードパーティのライブラリを使用する必要はありません。ASTA コンポーネントを FireMonkey3 プラットフォームに移植していますが、コンポーネント間の依存関係は望んでいません。

4

1 に答える 1

9

クロスプラットフォーム ソリューションが必要な場合は、ユニットTIdStack.AddLocalAddressesToListに含まれている Indy とメソッドを使用してみてください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;
于 2013-12-13T14:17:36.533 に答える