Einzelnen Beitrag anzeigen

Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Chat - Client/Server - Connection abfrage

  Alt 19. Dez 2007, 14:24
Kuck mal hier (hab ich aus meinem Chat-Programm, leicht verändert):

Delphi-Quellcode:
procedure Tf_haupt.SSocketClientRead(Sender: TObject; Socket: TCustomWinSocket);
var txt : String;
var i : Integer;
var s : string;
var ok : boolean;
begin
     txt := Socket.ReceiveText;
     //
     if (txt[1] <> '!') then
     begin // Wenn es kein Kommando ist, dann einfach senden!
         for i := 0 to SSocket.Socket.ActiveConnections-1 do SSocket.Socket.Connections[i].SendText(txt);
     end
     else
     begin // Wenn es ein Kommando ist, dann behandeln
          if (txt[1] = '!') then // Wenn Kommando = '! NICKNAME'
          begin
               s := Copy(txt,2,Length(txt)-1); // NickNamen auslesen
               ok := true;
               //
               if users.Items.Count > 0 then
               begin
                    // Überprüfen, ob Nick schon vorhanden ist
                    for i := 0 to users.Items.Count - 1 do
                    if users.Items[i] = s then ok := false;
               end;
               //
               if ok then
               begin // Wenn Nick noch nicht vorhanden, dann hinzufügen
                    users.Items.Add(s);
               end
               else
               begin // ansonsten Meldung schicken und Trennen!
                    if Socket.Connected then
                    begin
                         Socket.SendText('0Nick schon vergeben!');
                         Socket.Close;
                    end;
               end;
          end;
     end;
end;
Hoffe, ich konnte dir etwas weiterhelfen

Patti

EDIT 1: In meinem Beispiel ist '!' natürlich das Erkennungszeichen !
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat