Entwickler-Ecke

Internet / Netzwerk - Fehler bei OnClientWrite bei der Server Componente


theChaoS - Sa 03.01.09 20:29
Titel: Fehler bei OnClientWrite bei der Server Componente
Hallo alle zusammen hab ma wider ein Problem ;D

Ich nutze Delphi 6 und versuche grade ein einfaches Chatprogram übers Netzwerk zu schreiben mit hilfe der Delphi eigenen Server / Client kommponente.
So weit so gut einziges problem ich wollte OnClientWrite bei der Server COmponente nutzen damit sobald ein Client eine Message schreibt diese einfach an alle anderen CLienten weiter geben wird.
Dummer weise scheint die OnClientWrite funktion schon auszulösen sobald ich einfach nur meinen Client mit dem Server verbinde. Daraus follgt dan logicher weise ein fehler ;D.

Vielen Dank im voraus schonmal für die hilfe.

Hier mein Quelltext vom Server


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
procedure TForm1.ServerSocket1ClientWrite(Sender: TObject;
  Socket: TCustomWinSocket);
var i:integer;
MessagetoALL:string;
begin
if server1.GibOnlien=true then
begin



serversocket1.Open;
server1.SetzeMessageAll(ServerSocket1.Socket.ReceiveText);

  MessagetoALL := Socket.RemoteAddress+': '+server1.GibMessageAll;


 for i := 0 to ServerSocket1.Socket.ActiveConnections-1 do
    ServerSocket1.Socket.Connections[i].SendText(MessagetoALL);
    serversocket1.Close;
end
ELse
begin
  with Application do
  begin
    NormalizeTopMosts;
    MessageBox('Versuch der Nutzung troz offlienstatus''Warnung', MB_OK);
    RestoreTopMosts;
  end;

end;

end;


jaenicke - Sa 03.01.09 20:39

Versuchs doch einmal mit OnClientRead ;-).
Dies ist nämlich das Ereignis, das beim Server ausgelöst wird, wenn ein Client etwas an den Server sendet.

Siehe auch dieses Tutorial:
http://www.delphi-library.de/topic_60744.html