Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi TCP Chat Rückmeldungen (https://www.delphipraxis.net/74255-tcp-chat-rueckmeldungen.html)

Tobiax 31. Jul 2006 13:21


TCP Chat Rückmeldungen
 
Hallo ich hab einen TCP Client und einen TCP Server Programmiert aber wenn ich mit einen Client auf dem Server Connecte kann zwar was an den server Schreiben aber die anderen Clients sehen das nicht nur der serer deshalb brauch ich eine Rückmeldung das der Server die empfangene Nachricht wieder an die Clienten zurück sendet!! Bitte helft mir dringent



mfg.Tobiax

Aenogym 31. Jul 2006 13:25

Re: TCP Chat Rückmeldungen
 
hi,

ganz einfach: der server muss eben so auf eine ankommende nachricht reagieren, dass er die nachricht an alle anderen verbundenen clients sendet.
wo ist dein problem genau? weißt du, wie man eine nachricht vom server zum client sendet?

aeno

Tobiax 31. Jul 2006 13:31

Re: TCP Chat Rückmeldungen
 
Hi Aenogym genau das weis ich nicht kannst du mir einen code geben


danke für deine Hilfe


mfg.Tobiax

Tobiax 31. Jul 2006 14:21

Re: TCP Chat Rückmeldungen
 
MMM Aenogym wüstest du dei Anwort sehr wichtig für mich :stupid:


mfg.Tobiax

Aenogym 31. Jul 2006 14:39

Re: TCP Chat Rückmeldungen
 
(pushen ist erst nach 24 stunden hier erlaubt - also das schrieben von zwei beiträgen hintereinander ;)
und: ich bin auch arbeit, weshalb ich nicht permanent ins foru schaue ;))

aber nun zum code:

Delphi-Quellcode:
ClientSocket.Sendln('Nachricht');
wobei ClientSocket vom Typ TCustomIpClient ist.

ablaufen kann das ganze so:
dein client verbindet sich mit dem server. beim server wird das Ereignis OnAccept ausgelöst. darin wird dir im parameter ClientSocket ein objekt übergeben, mit dem du den client ansprechen kannst. dieses objekt musst du dir für spätere verwendung speichern (zB. in einem array ablegen).
der client besitzt das Ereignis OnReceive, das jedes mla ausgeführt wird, wenn er daten zum server sendet. sobald dieses ereignis ausgelöst wird, nimmst du dir die darin übergebene nachricht und schickst sie per .Sendln() an alle anderen clients, die du dir zuvor gespeichert hast.

aeno

Tobiax 31. Jul 2006 14:54

Re: TCP Chat Rückmeldungen
 
Danke erst mal aber ich hab keinen TCustomIpClient ???

was is das gibt es auch ein Möglichtkeit das TCP machen oder so?



mfg.Tobiax

Aenogym 31. Jul 2006 15:09

Re: TCP Chat Rückmeldungen
 
Zitat:

Zitat von Tobiax
Danke erst mal aber ich hab keinen TCustomIpClient ???

was is das gibt es auch ein Möglichtkeit das TCP machen oder so?



mfg.Tobiax

Du nutzt doch die fertigen Komponenten TTcpServer und TTcpClient, oder nicht?
TCustomIpClient ist quasi ein teil davon. und den bekommst du in verschiedenen ereignissen der komponenten übergeben.

aeno

Tobiax 31. Jul 2006 15:44

Re: TCP Chat Rückmeldungen
 
Ok aber wie soll ich den code dann einfügen bis jetzt hab ich das hier:
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, IdBaseComponent, IdComponent, IdTCPServer, StdCtrls, IdTCPConnection,
  IdTCPClient;

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    Edit1: TEdit;
    Button1: TButton;
    Server: TIdTCPServer;
    Button2: TButton;
    Client: TIdTCPClient;
    procedure ServerExecute(AThread: TIdPeerThread);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}



procedure TForm1.Button2Click(Sender: TObject);
begin
Server.Active:=false;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
with Server do
DefaultPort:=strtoint(edit1.text);
Server.Active:=true;
begin
Client.Host:=(''+Edit1.text);
Client.Connect();
Client.WriteLn(Edit1.Text);
 end;
 end;
procedure TForm1.ServerExecute(AThread: TIdPeerThread);
var
  ms: string;
begin
  ms:=athread.Connection.ReadLn('',10);
 Memo1.Lines.Add(ms);
end;

end.
Es wäre net wenn du das mir näher beschreiben könntest ich noch Anfänger!

danke

mfg.Tobiax

Tobiax 2. Aug 2006 14:44

Re: TCP Chat Rückmeldungen
 
Is das Thema schon eingeschlafen???


bitte helft mir!!

mfg.Tobiax


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:13 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz