Testar conexão externa (ativa ou não) DataSnap

Delphi

16/11/2013

Prezados,

Estou desenvolvendo um sistema em Delphi X3 em tres camadas, uma das aplicações cliente (que vai trabalhar com modem 3G) terá conexão com a base que esta num host externo(nas nuvens) e também local (banco firebird)!


A aplicação está ok, tudo funcinando, mas nao consigo dar um ping externo.
usei um componente Indy IdIcmpClient(dei o nome deste componente de Pingar e coloquei ele num Datamodule local)
Uso também esta função para efetuar o ping.


Localmente(passando o ip de uma maquina local) ele dá o ping e funciona normalmente, mas quando coloca um endereço externo da erro; “Socket erro # 10013


Preciso de uma solução para ver se o Client(Datasnap - IP) conseguiu conectar com o server.



Function Ping(var IPs:String) : String;



Function Ping(var IPs:String) : String;
var
Resp : String;
begin
with DMPLocal do begin
try
Pingar.Host := IPs;
Pingar.ReceiveTimeout := 1000;
Pingar.Ping;
Resp := IntToStr(Pingar.ReplyStatus.BytesReceived);


if Resp = '72' then begin
Ping := 'S';
end
else begin
Ping := 'N';
end;
except
Ping := 'N';
end;
end;



end;

Nilson Jr

Nilson Jr

Curtidas 0

Melhor post

Claudio Ferreira

Claudio Ferreira

10/09/2014

Testa essa rotina :

http://theroadtodelphi.wordpress.com/2010/02/21/checking-if-a-tcp-port-is-open-using-delphi-and-winsocks/
GOSTEI 1

Mais Respostas

Frederico Brigatte***

Frederico Brigatte***

16/11/2013

Esse código funciona????
GOSTEI 0
POSTAR