Remote bağlantı kontrolu yapmak istiyorum?

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
Shou
Üye
Mesajlar: 260
Kayıt: 26 Ağu 2011 02:00

Remote bağlantı kontrolu yapmak istiyorum?

Mesaj gönderen Shou »

Merhabalar ben remote pc ile baglantı kontrolu yapmak istiyorum eğer remote kapalıysa Ana sunucuya baglanılamıyor diyip program kapansın istiyorum şöyle bir kod buldum fakat baglanıyorda remote kapalıysa program donuyor ;

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
begin
try
  IdIcmpClient1.Host:='31.210.79.11';
  IdIcmpClient1.Ping();
  Label1.Caption:=IntToStr(IdIcmpClient1.ReplyStatus.MsRoundTripTime);
except
    ShowMessage('Soket hatası: Ana sunucuya baglanamiyor.');
end;
end;
yardımcı olursanız sevinirim..
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Re: Remote bağlantı kontrolu yapmak istiyorum?

Mesaj gönderen sabanakman »

Form üzerine IdAntiFreeze bileşeni yerleştirin. Eğer bunu yeterli bulmazsanız TThread sınıfını araştırın. Bu kodun programdan ayrı bir kanalda çalışmasını sağlayarak sorunu aşabilirsiniz.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
Shou
Üye
Mesajlar: 260
Kayıt: 26 Ağu 2011 02:00

Re: Remote bağlantı kontrolu yapmak istiyorum?

Mesaj gönderen Shou »

Hocam ne dediğinizi anlamıyorum yardımcı olursanız sevinirim.
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Re: Remote bağlantı kontrolu yapmak istiyorum?

Mesaj gönderen sabanakman »

Biraz da siz anlamaya çalışsanız :shock: . Yukarıda 2 öneri var. En azından 2. öneriyi göz ardı ederek form üzerine sadece IdAntiFreeze bileşenini ekleyerek deneme yapsaydınız keşke.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
Shou
Üye
Mesajlar: 260
Kayıt: 26 Ağu 2011 02:00

Re: Remote bağlantı kontrolu yapmak istiyorum?

Mesaj gönderen Shou »

teşekkür ederim abi dediğin gibi yaptım oldu. fakat birşey sormak istiyorum ping atmak sunucu kasmazmı yada başka yöntemle yapabılırmıyız url kontrolu vs?
orhancc
Üye
Mesajlar: 585
Kayıt: 24 Ağu 2010 02:14
Konum: İstanbul / Kadıköy
İletişim:

Re: Remote bağlantı kontrolu yapmak istiyorum?

Mesaj gönderen orhancc »

IdIcmpClient replystatus döndürüyor yanlış hatırlamıyorsam onu kontrol edebilirsin. İşlemi başka bir thread ile yapabilirsin Şaban abinin dediği gibi yapabilirsin ama yok o şekil zor geliyorsa JEDI içinde threadtimer diye birşey var aynı işi kolayca yapabilirsin.

Basit bir örnek, işlemi yapacak fonksiyon veya procedure CreateThreadin üstünde olacak yoksa delphi işlemi göremiyor bug mudur nedir anlamadım.

Kod: Tümünü seç

procedure Deneme();
var
  i,Topla:Integer;
begin
  i:=0;
   Topla:=0;
  for i := 0 to 1000000000  do
    begin
      Topla := Topla + 5;
    end;
    Form1.Label2.Caption := IntToStr(Topla);
  //  ShowMessage('Deneme Kanalı Sonlandı');
end;

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
var
  OHandle: THandle;
  OThreadVar:DWord;
begin
    OHandle:= CreateThread(nil,0,@Deneme,nil,0,OThreadVar); //@Deneme işlem yapacak fonksiyonun/procedurun adı. sen de pingi bu işlem içinde yapacaksın
  if  OHandle<>0 then
    ShowMessage('Kanal Oluşturuldu')
  else
    ShowMessage('Kanal Oluşturulamadı');
end;
En son orhancc tarafından 02 Eki 2011 06:00 tarihinde düzenlendi, toplamda 4 kere düzenlendi.
Kullanıcı avatarı
Shou
Üye
Mesajlar: 260
Kayıt: 26 Ağu 2011 02:00

Re: Remote bağlantı kontrolu yapmak istiyorum?

Mesaj gönderen Shou »

Nasıl yani örnek verebilirmisin?
Cevapla