Einzelnen Beitrag anzeigen

Benutzerbild von Delphi-Narr
Delphi-Narr

Registriert seit: 29. Aug 2009
Ort: Duisburg
437 Beiträge
 
Delphi 2007 Professional
 
#1

Chat klappt nicht

  Alt 3. Dez 2009, 21:57
Hallo,
hab wieder mal ein Problem mit meinem Lan-Chat:

Hab ihne mit folgenden Grundprozeduren aufgebaut:
Server wird eröffnet:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
     Server.Port:=2350;
     Server.open;
end;
Client kontaktiert Zielserver:
Delphi-Quellcode:
{Hab mehrere dieser Radios, beispielsweise einer hier:}
procedure TForm1.Radio1Click(Sender: TObject);
begin
     begin
             Client.Close;
             Status.Caption:='Verbinden mit 192.168.2.105';
             Client.Port:=2350;
             Client.Host:='192.168.2.105';
             Client.open;
             Status.Caption:='Verbunden mit 192.168.2.105';
     end;
end;
Nachricht übermitteln:

Delphi-Quellcode:
procedure TForm1.SendenClick(Sender: TObject);
begin
        //Nachricht ins Nachrichtenfenster:
        begin
             Nachrichten.SelAttributes.Color:=clgreen;
             Nachrichten.Lines.Add('Sie um ' + TimeToStr(Now));
             Nachrichten.Lines.add(eingabe.text);
        end;
        //Senden an Empfänger:
        Status.Caption:='Sende Nachricht...';
        Client.Socket.SendText(Eingabe.text);
        Client.Socket.RemoteHost;
        Status.Caption:='Nachricht gesendet';
end;
Und noch das Empfangen der Nachricht:

Delphi-Quellcode:
procedure TForm1.ServerClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
var Nachricht:string;
    vSender:string;
begin
     Nachricht:=Socket.ReceiveText;
     Nachrichten.SelAttributes.Color:=clred;
     vSender:=Socket.RemoteAddress;
     case vSender[13] of
     '5':vSender:='Sender 1';
     '2':vSender:='Sender 2';
     end;
     Nachrichten.Lines.Add(vSender+ ' um '+TimeToStr(Now)+':');
     Nachrichten.SelAttributes.Color:=clblack;
     Nachrichten.Lines.Add(Nachricht);
     
end;
Jetzt kann ich an mich selber Nachrichten schicken, an andere PCs jedoch nicht...
Der Port muss am Router freigegeben sein, oder?
Wenn ich das erste Mal auf einen der Radiobuttons klicke, kommt das CPU-Fenster - weiß ich nicht warum...

Wo ist der Fehler?
Liebe Grüße!
  Mit Zitat antworten Zitat