Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Ping Gönderme İşlemi
#1
Sa Arkadaşlar Windows uygulamalarda IdIcmpClient1 componenti ile rahatlıkla ping atabilirken firemonkey uygulamalarda bu component hata veriyor.
Siz ping atmak için ne kullanıyorsunuz?
Cevapla
#2
https://stackoverflow.com/questions/2509...droid-ping

https://github.com/coolshou/fmxPing

https://forums.embarcadero.com/thread.js...dID=106389
kisisel_logo_dark.png
WWW
Cevapla
#3
(03-08-2018, Saat: 09:28)apachi2006 Adlı Kullanıcıdan Alıntı: Sa Arkadaşlar Windows uygulamalarda IdIcmpClient1 componenti ile rahatlıkla ping atabilirken firemonkey uygulamalarda bu component hata veriyor.
Siz ping atmak için ne kullanıyorsunuz?

Amaç SQL'e ping atmak ise connectiontimeout verilip connection kurmaya çalışılabilir. Except'te olay yakalanır.
Yalnızım ama bir kente yürüyen ordu gibiyim, edebiyattan kaçınmalıyım..
Cevapla
#4
uses IdTCPConnection, IdTCPClient;

function CanConnect(const aHost: string; const aPort: Integer): Boolean;
var
 tcp: TIdTCPClient;
begin
 tcp := TIdTCPClient.Create(nil);
 try
   tcp.Host := aHost;
   tcp.Port := aPort;
   tcp.ConnectTimeout := 1750;
   tcp.Connect;
   Result := True;
   tcp.Disconnect;
 except
   on E: Exception do
   begin
     Result := False;
   end;
 end;
end;



procedure Tmain.Timer1Timer(Sender: TObject);
begin
if CanConnect('10.71.0.94', 8443) then
 begin
 TwwPlatformServices.HideWaitDialog;
 end
 else
 TwwPlatformServices.ShowWaitDialog('Bağlantınız Yenileniyor...');
end;

Bu şekilde çözdüm.
Cevapla
#5
Çözümü paylaşmanız taktire şayan.

Başarılar.
Cevapla
#6
(07-08-2018, Saat: 22:42)apachi2006 Adlı Kullanıcıdan Alıntı:
uses IdTCPConnection, IdTCPClient;

function CanConnect(const aHost: string; const aPort: Integer): Boolean;
var
 tcp: TIdTCPClient;
begin
 tcp := TIdTCPClient.Create(nil);
 try
   tcp.Host := aHost;
   tcp.Port := aPort;
   tcp.ConnectTimeout := 1750;
   tcp.Connect;
   Result := True;
   tcp.Disconnect;
 except
   on E: Exception do
   begin
     Result := False;
   end;
 end;
end;



procedure Tmain.Timer1Timer(Sender: TObject);
begin
if CanConnect('10.71.0.94', 8443) then
 begin
 TwwPlatformServices.HideWaitDialog;
 end
 else
 TwwPlatformServices.ShowWaitDialog('Bağlantınız Yenileniyor...');
end;

Bu şekilde çözdüm.

Paylaşımınız için çok teşekkürler.
Amaç, bilginin de/aklın da zekat'ını vermek.
Cevapla
#7
Eyvallah ustalar kolay gelsin.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Android uygulamaya Pdf Gönderme OmerAsaf 6 1.718 17-09-2023, Saat: 21:05
Son Yorum: mrmarman
  whatsapp otomatik mesaj gönderme kornakamil 20 7.067 16-08-2023, Saat: 18:35
Son Yorum: enigma
  şirketin konumunu uygulama üzerinden yol tarifi için haritalara gönderme diseqc 9 1.846 12-05-2023, Saat: 00:29
Son Yorum: mcuyan
  Android veri gönderme hakankvk 3 820 29-12-2022, Saat: 18:40
Son Yorum: hakankvk
  ios api bilgi çekme gönderme gonulali 6 1.263 21-09-2022, Saat: 09:43
Son Yorum: gonulali



Konuyu Okuyanlar: 1 Ziyaretçi