Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi [Indy] Freezing mit Sendcmd... (https://www.delphipraxis.net/41522-%5Bindy%5D-freezing-mit-sendcmd.html)

coco90 4. Mär 2005 15:49


[Indy] Freezing mit Sendcmd...
 
Hallo Leute,

ich versuche die Indy komponenten zu benutzen, besonders sendCmd, getResponse usw.
Alles laüft, bis die Anwendung "freeze", nach der zweite Kommand...und es, trotz der Verwendung eines TIdAntiFreeze Komponents.

hier ist mein Server code

Delphi-Quellcode:
procedure TForm1.IdCmdTCPServer1TIdCommandHandler0Command(
  ASender: TIdCommand);

var
param_login, param_passwd:string;
result_anmeldung : integer;

begin

       param_login := ASender.Params[0];
       param_passwd := ASender.Params[1];
....

     case result_anmeldung of
        2 : ASender.Response.Add('222 NICHT_ERKENNT');
        1 : ASender.Response.Add('221 FALSCHE_KENNWORT');
        0 : ASender.Response.Add('220 NO_PROBLEM');
      end;
end;

Hier ist mein Client Code

Delphi-Quellcode:
procedure TForm2.Button1Click(Sender: TObject);
begin
  // Verbindung + Befehl 'connection' und Parametern
  IdCmdTCPClient1.Create;
    try
        IdCmdTCPClient1.host:='127.0.0.1';
        IdCmdTCPClient1.port:=6000;
        IdCmdTCPClient1.CommandHandlersEnabled:=true;
        IdCmdTCPClient1.Connect;
        IdCmdTCPClient1.getResponse(200);
        ShowMessage(IdCmdTCPClient1.LastCmdResult.Text.text);
     except
         ShowMessage('Verbindung unmöglich !');
     end;

     login := txt_login.text;
     passwd := txt_kennwort.text;
      try
        IdCmdTCPClient1.SendCmd('connection$'+login+'$'+passwd, [220,221,222]);
        ShowMessage(IdCmdTCPClient1.LastCmdResult.Text.text);
        // Danach "freeze" die Anwendung
      finally
          IdCmdTCPClient1.disconnect;
      end;
     

end;

Vielleicht fällt mir eine Kleinigkeit... :roll:
Wenn jemand auch gute Linken zu diese Komponenten (TidCmdTCPClient und Server) hat, kann es mich interessieren !

Vielen Dank für eure Hilfe ! :wink:

coco90 8. Mär 2005 14:59

Re: [Indy] Freezing mit Sendcmd...
 
Jetzt habe ich anders probiert :

Der Server Code :
Delphi-Quellcode:
      ASender.Reply.setReply(300, 'KLAPPT');
      ASender.SendReply;
Der Client Code :
Delphi-Quellcode:
     
       try
         CmdClient.Connect;
         CmdClient.SendCmd('connection$LOGIN$PASSWD');
         CmdClient.getResponse([300,200]);
         Memo.lines.add(CmdClient.LastCmdResult.Text.text);

      finally
          CmdClient.Disconnect;
       end;
Obwohl er diesen 'KLAPPT' kriegt, scheint er auf etwas anders zu warten, die Anwendung "freezt", und ich kriege eine exception der Klasse IOHandler, wenn ich den server stoppt...

Kann jemand mir helfen ? Danke !!!


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:35 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