Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
indy IdTCPServer1 data alma problemi lazarus
#1
arkadaşlar lazarusda server-client denemeleri yapıyorum ama bir sorun yaşıyorum.
gönderdiğim data geliyor gösteriyor ama sonra hataya geçiyor sorun ne olabilir acaba.
saygılarımla

procedure TDML1tcp.tcpGelen1Execute(AContext: TIdContext);
var
Swp:String;
begin
try
AContext.Connection.IOHandler.CheckForDisconnect(True, True);
Swp:=AContext.Connection.IOHandler.ReadLn();
if Swp <>'' then ShowMessage(Swp);
finally
end; 
Ekmeğimi yazılımdan kazanmıyorum kendi halimde bir şeyler yapıyorum. 49 yaşında emekliyim.
İğne sokmadan yardımcı olacaksan başımın üstünde yerin var.

Cevapla
#2
sorunu buldum client tarafındaymış ama peş peşe bilği göndermede sorun var demekki 
1 veriyi alınca server kapanıyor sanırım.
ikinci satırda ('*dur*') gönderince hataya geçiyor iptal edince hata  vermiyor.



procedure Lane1TCPveriGonder(gln:string);
var
LLine: String;
begin
try
//DMtcp.tcpGonderL1.Host:='127.0.0.1';
//DMtcp.tcpGonderL1.Port:=1561;

if not (DMtcp.tcpGonderL1.Connected) then
  begin
   DMtcp.tcpGonderL1.Connect;
   DMtcp.tcpGonderL1.IOHandler.writeln(gln);
   //DMtcp.tcpGonderL1.IOHandler.WriteLn('*dur*');
  end;
DMtcp.tcpGonderL1.Disconnect;

except     //hata bölümü
    begin
    errorKaydet('Lane1TCPveriGonder');
    end;
    end;
end; 
Ekmeğimi yazılımdan kazanmıyorum kendi halimde bir şeyler yapıyorum. 49 yaşında emekliyim.
İğne sokmadan yardımcı olacaksan başımın üstünde yerin var.

Cevapla
#3
cevaplarınız için çok teşekkürler @emre21 hocam

önce tek veri göndererek alma olayına odaklandım. dedikleriniz ugulayacağım ama öncelikle çok ilğinç bir durum yaşıyorum.

AContext.Connection.IOHandler.CheckForDisconnect(True, True);
Swp:=AContext.Connection.IOHandler.ReadLn();
if Swp <>'' then
          begin
          tcp_GelenVeri[1]:=Swp;
          Timer_AnaVerigelisi.Enabled:=true;
          //ShowMessage(Swp);
          end; 

yukardaki kodda showmessagedevrede iken timer çalışıyor problem yok ama mesaj devreden çıkınca timer devreye girmiyor bu nasıl olabilir.

birde data gelince global değişkene değer atasın öyle timer devreye alayım bakalım ne olacak
saygılarımla
Ekmeğimi yazılımdan kazanmıyorum kendi halimde bir şeyler yapıyorum. 49 yaşında emekliyim.
İğne sokmadan yardımcı olacaksan başımın üstünde yerin var.

Cevapla
#4
sorunu global bir değişeknle çözdüm timer sürekli devrede kalıyor.
şu anda tek gönderim için sorun yok dizi veya birden fazla gönderimi deneyeceğim

saygılarımla

AContext.Connection.IOHandler.CheckForDisconnect(True, True);
Swp:=AContext.Connection.IOHandler.ReadLn();
if Swp<>'' then
          begin
          tcp_GelenVeri[1]:=Swp;
          drmGelen:=1;
          end; 
Ekmeğimi yazılımdan kazanmıyorum kendi halimde bir şeyler yapıyorum. 49 yaşında emekliyim.
İğne sokmadan yardımcı olacaksan başımın üstünde yerin var.

Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  DLL içerisinde FireDac Problemi tecnomaster 1 165 16-03-2024, Saat: 18:05
Son Yorum: delphi.developer
  IEC 61850 Potokolünden veri alma shooterman 1 449 14-03-2024, Saat: 11:38
Son Yorum: shooterman
  türkçe karakter problemi delphiX14 4 467 27-12-2023, Saat: 10:03
Son Yorum: delphiX14
  Problem - ZKTeco Cihazlardan Anlık Veri Alma mad85 16 8.184 25-12-2023, Saat: 11:35
Son Yorum: osiso
  Delphi 7 Indy Komponent SKC3948 12 2.727 22-12-2023, Saat: 20:36
Son Yorum: maydin60



Konuyu Okuyanlar: 1 Ziyaretçi