Entwickler-Ecke

Internet / Netzwerk - ServerSocket1ClientRead


Die Brotmafia - Sa 26.11.05 15:00
Titel: ServerSocket1ClientRead
Also, es sieht so aus: Der Clientsocket schickt dem Server was, der Serversocket soll darauf reagieren.
Ich dachte mal ich mach das so:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
var text: string;
  begin
    text:= Serversocket1.Socket.Connections[a].ReceiveText;
     if text='test' then begin
       Memo1.Lines.Clear;
       Memo1.Lines.Add('test2')
      end
       else
         Memo1.Lines.Clear;
         Memo1.Lines.Add(Socket.ReceiveText);

end;


Eigentlich müsste jetzt nur Test im Memo stehen, wenn der Client 'test' schreibt, allerdings ist dem nicht so, wenn ich z.B. was anderes als 'test' zugeschickt bekomme passiert nämlich gar nix großartiges, denk mal ich mach da was mit dem if else falsch oder so? Eigentlich müsste er nämlich den Text den er zugeschickt bekommt, solange dieser nicht 'test' ist einfach ins Memo1 eintragen. (siehe code nach dem else)
Bevor ich das if text='test' hatte, also nur den Abschnitt ab dem else, gings auch.

mfg Die Brotmafia

Moderiert von user profile iconraziel: Code- durch Delphi-Tags ersetzt


Narses - So 27.11.05 00:52

Moin!

Mach das mal so:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
procedure TForm1.ServerSocket1ClientRead(Sender: TObject;  
  Socket: TCustomWinSocket);  
  var
    text: String;  
begin  
  text := Socket.ReceiveText;  
  if ( text = 'test' ) then begin  
    Memo1.Lines.Clear;  
    Memo1.Lines.Add('test2')  
  end  
  else begin
    Memo1.Lines.Clear;  
    Memo1.Lines.Add(text);  
  end;
end;

cu
Narses