TIdIPWatch + FMX + LocalIP

Delphi

13/10/2015

Olá,

Estou utilizando essa função para buscar o endereço de IP local da máquina.


class function TFuncoesSistema.LocalIP: String;
var
  lIdIPWatch: TIdIPWatch;
begin
  Result := EmptyStr;
  lIdIPWatch := nil;
  try
    lIdIPWatch := TIdIPWatch.Create(nil);
    lIdIPWatch.Active := True;
    Result := lIdIPWatch.LocalIP;
  finally
    if Assigned(lIdIPWatch) then
      FreeAndNil(lIdIPWatch);
  end;
end;


Testei várias vezes sem nenhum problema. Só que andei trocando o meu modem da operadora e coloquei outro. Usando essa mesma função ele está retornando um ip que não consigo acessar de outra máquina simplesmente pingando.

está me retornando 10.10.10.23 e o ipconfig da máquina fornece o número 192.168.25.2

Testando essa situação em um cliente aconteceu a mesma coisa.

Uso isso no servidor REST feito em Firemonkey.

Alguém já passou por isso?
Flex Ltda

Flex Ltda

Curtidas 0

Respostas

Rafael Bosco

Rafael Bosco

13/10/2015

Troca o LOCALIP pelo current, vê se vai resolver:

    Result := lIdIPWatch.CurrentIP;
GOSTEI 0
POSTAR