Autor Beitrag
dragos_victor
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 21



BeitragVerfasst: Mi 22.06.05 10:57 
hallo an allen.
nach manchem ni und her habe ich einen kleinen server gebastelt mit indy9 und D-7 E.
hier erst mal den code:
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
unit chat_s;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Label1: TLabel;
    Memo1: TMemo;
    server: TIdTCPServer;
    Button3: TButton;
    Edit1: TEdit;
    procedure Button1Click(Sender: TObject);
    procedure serverExecute(AThread: TIdPeerThread);
    procedure serverDisconnect(AThread: TIdPeerThread);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
msg,sms:string;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  buffer:string;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
memo1.Lines.Clear;
form1.Caption:=('Server');
server.DefaultPort:=2200;
server.Bindings.DefaultPort:=2200;
server.Active:=true;
end;

procedure TForm1.serverExecute(AThread: TIdPeerThread);
var
ip,iesire:string;
begin
Ip:=athread.connection.socket.binding.peerip;
label1.Caption:=ip;
athread.Connection.WriteLn('hallo client');
if msg <>'' then
begin
athread.Connection.WriteLn(msg);
end;
iesire:=athread.Connection.CurrentReadBuffer;
memo1.Lines.Add(iesire);
end;

procedure TForm1.serverDisconnect(AThread: TIdPeerThread);
begin
athread.Connection.WriteLn('Server deconectat');
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
form1.Caption:=('Server deconectat');
label1.Caption:=('');
server.Active:=false;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
msg:=edit1.Text;
memo1.Lines.Add(edit1.text);

end;

end.


mit diesem server kann ich mich en einem oder mherere clienten verbinden aber einen string wierd nur zwieschen einem clienten und dem server gesendet.
nun meine frage:
wie kann ich zwei oder mherere clienten uber diesen server verbinden?

Moderiert von user profile iconKlabautermann: Code- durch Delphi-Tags ersetzt.
dragos_victor Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 21



BeitragVerfasst: Do 23.06.05 09:47 
hallo.
kann keiner helfen?
muss man ein thread offnen fur jheden clienten?
CeeJay D-Magic
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 94

Win XP Prof.
Delphi 7, Lazarus 0.9
BeitragVerfasst: Di 28.06.05 11:49 
Ich kenne mci zwar nicht mit dem Indys aus, aber, wenn du strings versenden möchtest, versuchs doch mal mit den normalen TServersocket und dem normalen TClientsocket, die bei delphi schon mitgeliefert wurden

Dazu kannst du auch folgendes Downloaden
siehe hier: www.delphi-forum.de/...ogramm_43227,20.html

Ich hoffe ich konnte helfen...