delphi indy client

Vývojová prostředí, aplikace, skripty, http://www... síťové programy, internet, sdílení...
Odpovědět
zixi
Začátečník
Začátečník
Registrován: 10. pro 2003
Bydliště: Nitra SR/ BA SR
Kontaktovat uživatele:

delphi indy client

Příspěvek od zixi »

potrebujem urobit aplikaciu server/client kde na server sa poslu nejake data ,ktore sa spracuju a clienti budu nasluchat v urcitych intervaloch ci server nieco neposlal, aj by to mozno fungovalo len keby ten client nezamrzne alebo sa zasekne, ja neviem , poradte prosim co s tym
-v tomto prilkade posle niektory klient nejaky text a server to posle vsetkym s otaznikmi na konci textu
server:

procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
var s:string;
begin
s:=athread.Connection.ReadLn;
memo1.Lines.Add(s);
sende(s);
end;

procedure tform1.sende(s:string);
var c:integer;
list:tlist;
begin
list:=idtcpserver1.Threads.LockList;
try
for c:=0 to list.Count-1 do
try
if tidpeerthread(list.Items[c]).Connection.Connected then
tidpeerthread(list.Items[c]).Connection.WriteLn(s+' ????');
except
tidpeerthread(list.Items[c]).Stop;
end;
finally
idtcpserver1.Threads.UnlockList;
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
if not idtcpserver1.Active then begin
idtcpserver1.DefaultPort:=5050;
idtcpserver1.Bindings.Clear;
with idtcpserver1.Bindings.Add do port:=5050;
end;
if not idtcpserver1.Active then idtcpserver1.Active:=true;
end;



client:

procedure TForm1.Button1Click(Sender: TObject);
begin
if not idtcpclient1.connected then begin
idtcpclient1.Host:='127.0.0.1';
idtcpclient1.Port:=5050;
idtcpclient1.Connect;
timer1.Enabled:=true;
end else begin
timer1.Enabled:=false;
idtcpclient1.Disconnect;
end;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var s:string;
begin
if idtcpclient1.Connected then begin
s:=idtcpclient1.ReadLn('',5);
if s<>'' then memo1.Lines.Add(s);
end;
end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if (key=#13) and idtcpclient1.Connected then idtcpclient1.WriteLn(edit1.Text);
end;
Gigabyte P35C-DS3R, Q6600@3 GHz, ThermaltakeBigTyphoonVX, 2x2 GB Kingston 1066 MHz, Gigabyte 260 GTX OC, HDD Hitachi 2x250 GB Raid 1, HDD WD 2x320 GB Raid 1, DVDRW LG, Asus Xonar D1, Zdroj Corsair 450W, LCD Samsung 19" 940BW
zixi
Začátečník
Začátečník
Registrován: 10. pro 2003
Bydliště: Nitra SR/ BA SR
Kontaktovat uživatele:

Příspěvek od zixi »

uz som to urobil ,na strane servera cez vlakna
Gigabyte P35C-DS3R, Q6600@3 GHz, ThermaltakeBigTyphoonVX, 2x2 GB Kingston 1066 MHz, Gigabyte 260 GTX OC, HDD Hitachi 2x250 GB Raid 1, HDD WD 2x320 GB Raid 1, DVDRW LG, Asus Xonar D1, Zdroj Corsair 450W, LCD Samsung 19" 940BW
Odpovědět

Zpět na „Programování a web“