![]() |
Clientsoccket wird nicht Active....
Tach....
folgendes Problemm... zur Laufzeit des programms wird die ClientSocket Eingenschaft "Active" jeweils auf True und False gesetzt, beim setzen der Eingenschaft auf true und nachkommenden Prufung ist sie jedoch False....!!!!!
Delphi-Quellcode:
auf der Gegenseite (auf dem Server) werden aber die Ereignisse OnClientConnect und OmAccept ausgelöst..
result := true;
form1.ClientSocket1.Address := SERVER_IP; form1.Debug_Memo.Lines.Add('Try to connect to the new Server '+ SERVER_IP +formatDateTime('hh:nn:ss:', now)); try form1.ClientSocket1.Active := true; except form1.Debug_Memo.Lines.Add('Error while connecting '+ server_ip+ ' ' +formatDateTime('hh:nn:ss:', now)); end; //TRY if not form1.ClientSocket1.Active then begin form1.Debug_Memo.Lines.Add('Sorry nobody at home at :)'+ server_ip+ ' ' +formatDateTime('hh:nn:ss:', now)); result := false; end; beim Versuch daten vom Client zum Server zuschicken passiert nichts... ip und port sind jeweils eingestellt auf beiden Seiten.... |
Re: Clientsoccket wird nicht Active....
F1! F1! :coder2: Dazu schreibt die Delphi-Hilfe...
Zitat:
Grüsse! |
Re: Clientsoccket wird nicht Active....
Moin!
Das macht nix - wenn man sich den Code der beiden Komponenten mal anschaut:
Delphi-Quellcode:
Grundlegend sind aber 2 Gedankenfehler in dem o.g. Code:
procedure TAbstractSocket.Open;
begin Active := True; end; procedure TAbstractSocket.Close; begin Active := False; end; 1. Das Try/Except ist soweit unnütz, da der Socket mit einem Thread arbeitet und daher die Fehler asynchron zu den Methoden auftreten - nutze das OnError Ereignis statt dessen. 2. Wenn du Active auf True setzt, dann macht er das aus dem in 1. genannten Grund nicht sofort und daher kannst du nicht zwei Befehle später nachfragen ob der Socket aktiv ist. MfG Muetze1 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:36 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