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 !