Einzelnen Beitrag anzeigen

Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#1

Problem mit Chat (1 Server + mehrere Clients)

  Alt 29. Mär 2004, 16:19
Ich hab ein Problem mit meinem Chat, der mit einem Server und mehreren Clients läuft (laufen soll), und zwar sendet der Server seinen erhaltenen Text nur an den Client weiter, der sich als erster verbunden hat. Wenn ich bei diesem zweiten Clienten einen Text schicke, dann erhält ihn nur der erste in seinem Memo, er selber aber nicht. Könnt ihr mir helfen?

Hier zur Veranschaulichung der QT vom Server:
Delphi-Quellcode:
unit Server_U;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ScktComp, StdCtrls;

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    ServerSocket1: TServerSocket;
    procedure ServerSocket1ClientRead(Sender: TObject;
      Socket: TCustomWinSocket);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
var
i :integer;
msg :string;

begin
Memo1.lines.add(Socket.ReceiveText);
For I := 0 to ServerSocket1.Socket.ActiveConnections - 1 do
begin
msg:=Socket.ReceiveText;
with ServerSocket1.Socket.Connections [I] do
if (Connected) then SendText(Memo1.Text);
Memo1.Clear;
end;
end;

end.
Kann man das evtl. auch noch besser machen?
Julian J. Pracht
  Mit Zitat antworten Zitat