![]() |
Indy TCP Client - Verständnisproblem
Hallo Zusammen!
Nach eurer Hilfe in Beitrag ![]() Nur scheinbar habe ich was generelles nicht verstanden. Ich habe mit einen im Client einen Timer gebastelt, der mittels...
Delphi-Quellcode:
immer versucht, Daten zu lesen, die evtl. vom Server gensendet werden können.
LIMClient.Socket.ReadBytes(Buf, SizeOf(TConnectionData));
BytesToRaw(Buf, Data, SizeOf(TConnectionData)); Wie ist denn das. Gibt es beim IDTCPClient ein Ereignis das mir sagt - Hallo, es sind gerade Daten vom Server gekommen? Oder ist das mit dem Timer eine Lösung? Ich glaube ich habs prinzipiell nicht verstanden, wie das ganze arbeitet. Kann mir jemand helfen? Danke euch! Peter .. oder kurz gesagt: Schreibt mir der Server in den Client (wenn ja, wie bekomme ich das mit) oder muss ich vom Client her lesen (wenn ja, wo wäre das am besten, oder ist der Timer die Lösung) |
AW: Indy TCP Client - Verständnisproblem
So zB, den InputBuffer auf die größe Prüfen, wenn ja, ist was da.
Delphi-Quellcode:
procedure TCRMTCPClient.DoTimer(Sender: TObject);
var cmd : string; begin try if FTimer.tag = 1 then exit; FTimer.tag := 1; if not Connected then begin Connect; if not Connected then begin FTimer.tag := 0; exit; end; end; if IOHandler.InputBuffer.Size = 0 then begin // ReadFromStack(true, 1, false); IOHandler.CheckForDataOnSource(1); if IOHandler.InputBuffer.Size = 0 then begin FTimer.tag := 0; exit; end; end; DoOnExecute; FTimer.tag := 0; except on e:exception do begin FTimer.tag := 0; end; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:19 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz