![]() |
indy tcp connection 1.uppt was 2. macht nichts warum?
hi,
ich hab malwieder ein problem und zwar: ich eine prog mit 2 tcp clienten der erste schickt dateien von pc a nach pc b der zweite sollte wärend dessen fragen ob es neue daten gibt und da is das prob: wenn ich mit dem mit dem ersten tcp client daten verschicke macht der zweite nichts mehr warum? 1. tcp client
Delphi-Quellcode:
2.tcp client
procedure TForm1.ti_dlTimer(Sender: TObject);
var FStream:tfilestream; begin FStream := TFileStream.Create('la.rar', fmOpenRead); IdTCPClient_filemanager.Connect; try IdTCPClient_filemanager.IOHandler.Write(Fstream,0,true); finally IdTCPClient_filemanager.Disconnect; end; FreeAndNil(FStream); ti_dl.enabled:=false; end;
Delphi-Quellcode:
procedure TForm1.ti_askTimer(Sender: TObject);
begin IdTCPClient_respnse.IOHandler.writeln('was_neues?'); line:=IdTCPClient_respnse.IOHandler.ReadLn; if (line='ja') and (ti_dl.enabled=false) then begin ti_dl.enabled:=true; IdTCPClient_respnse.IOHandler.writeln('ok'); end else begin IdTCPClient_respnse.IOHandler.writeln('besetzt'); end; end; |
Re: indy tcp connection 1.uppt was 2. macht nichts warum?
Ich bin nicht sicher, aber es könnte am IOHander liegen. Versuch diesen mal durch Socket bzw AThread zu ersetzten.
|
Re: indy tcp connection 1.uppt was 2. macht nichts warum?
macht keinen unterschied
|
Re: indy tcp connection 1.uppt was 2. macht nichts warum?
Dann hilft nur Debuggen auf beiden Seiten.
Ein gutes Demo wie man mit den Indy Dateien verschickt, Empfängt und dabei auch noch Nachrichten übermittelt, findes Du hier ![]() |
Re: indy tcp connection 1.uppt was 2. macht nichts warum?
das tutorial kenne ich schon aber es is schon etwas veraltet und geht nicht mehr mit indy 10
ich hab es auch umgeschrieben geht aber tzotzdem nicht mit dem 2 verbindungen |
Re: indy tcp connection 1.uppt was 2. macht nichts warum?
Zitat:
|
Re: indy tcp connection 1.uppt was 2. macht nichts warum?
so
was soll ich daran debuggen? ich finde nichts! client:
Delphi-Quellcode:
server:
procedure TForm1.Button1Click(Sender: TObject);
begin IdTCPClient_msg.Connect; IdTCPClient_send.Connect; ti_msg.enabled:=true; end; procedure TForm1.ti_msgTimer(Sender: TObject); begin ti_send.enabled:=true; IdTCPClient_msg.socket.WriteLn('ja'); end; procedure TForm1.ti_sendTimer(Sender: TObject); var FStream: TFileStream; begin ti_send.enabled:=false; FStream := TFileStream.Create('C:\b.avi', fmOpenRead); try IdTCPClient_msg.socket.WriteLn('jetzt'); IdTCPClient_send.socket.Write(Fstream,0,true); IdTCPClient_msg.socket.WriteLn('ende'); finally IdTCPClient_send.Disconnect; end; FreeAndNil(FStream); ti_msg.enabled:=false; ti_send.enabled:=false; IdTCPClient_msg.Disconnect; end;
Delphi-Quellcode:
procedure TForm1.IdTCPServer_getExecute(AContext: TIdContext);
var FStream:tfilestream; begin FStream := TFileStream.Create('C:\ka.avi', fmCreate); try AContext.connection.socket.ReadStream(fstream); finally end; FreeAndNil(FStream); end; procedure TForm1.IdTCPServer_msgExecute(AContext: TIdContext); begin try while (AContext.Connection.Connected=true) do begin memo1.Lines.add(AContext.Connection.socket.ReadLn); end; except end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:27 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 by Thomas Breitkreuz