Einzelnen Beitrag anzeigen

SIn

Registriert seit: 13. Apr 2004
14 Beiträge
 
#1

Eine Frage zu TServerSocket und OnClientread Ereignis

  Alt 24. Mai 2004, 20:00
Delphi-Quellcode:
var server:array[1..2] of TServerSocket
.
.
.
procedure TServerRead(Sender: TObject; Socket: TCustomWinSocket);
 var i,c:integer;
    msg:String;
 begin
  for i:= 1 to 2 do
   begin
    if Sender is server[i] then //<---- der mag das is nicht
     begin
       msg:=Server[i].Socket.ReceiveText;
       for c:= 0 to server[i].Socket.ActiveConnections-1 do
       Server[i].Socket.Connections[c].SendText(msg);
       Form1.Memo1.Lines.Add(msg + inttostr(i) + inttostr(c));
     end;
   end;
 end;
ich habe 2 Probleme

1. an der markierten Stelle schreibt der Compiler:"[Fehler] Unit1.pas(42): Operator ist auf diesen Operandentyp nicht anwendbar" . Weiss vielleicht jemand , wie ich das anders lösen kann.

2. Diese Procedure soll es mir ermöglichen mehrere (Hier 2) Server zu verwalten, die genau das gleiche tun sollen , wenn sie aufgrufen werden. Mein Problem ist, das ich keine Ahnung hab wie ich diese Procedure aufrufen soll. Ich hab dabei an ne Repeat until Schleife gedacht. Der verlangt jedoch immer irgendwelche Parameter die ich ihm nicht geben kann. Kann es vielleicht das ich die Procedure jedem Server diese zuweisen muss, sprich Server[i].onclientread := Tserverread;??
Wenn mir einer sagen kann was ich tun muss , dass diese Procedure für beide bzw mehrere. Server funktioniert, wäre ich sehr dankbar.

mfg SIn
  Mit Zitat antworten Zitat