Добрый день! Стал искать интернет чат и вроде нашел но сообщения отправляться в никуда
Client
unit Unit2;
interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
IdBaseComponent, IdComponent, IdUDPBase, IdUDPClient, FMX.StdCtrls, FMX.Edit,
FMX.Controls.Presentation, FMX.ScrollBox, FMX.Memo;
type
TForm2 = class(TForm)
Memo1: TMemo;
Edit1: TEdit;
Button1: TButton;
IdUDPClient1: TIdUDPClient;
procedure Button1Click(Sender: TObject);
procedure IdUDPClient1Connected(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
{$R *.fmx}
procedure TForm2.Button1Click(Sender: TObject);
begin
if Edit1.Text<>'' then
begin
IdUDPClient1.BufferSize:=length(Edit1.Text);
IdUDPClient1.Send(edit1.Text); //отправка сообщени¤ в сеть
Edit1.Text:='';
end;
end;
procedure TForm2.FormCreate(Sender: TObject);
begin
end;
procedure TForm2.IdUDPClient1Connected(Sender: TObject);
begin
IdUDPClient1.Send('Rady');
end;
end.
Server
unit yadro;
interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, IdUDPClient,
IdBaseComponent, IdComponent, IdUDPBase, IdUDPServer, FMX.StdCtrls, FMX.Edit,
FMX.Controls.Presentation, FMX.ScrollBox, FMX.Memo, IdGlobal, IdSocketHandle;
type
TForm2 = class(TForm)
Memo1: TMemo;
Button1: TButton;
Edit1: TEdit;
Label1: TLabel;
IdUDPServer1: TIdUDPServer;
Button2: TButton;
Button3: TButton;
Label2: TLabel;
Timer1: TTimer;
procedure IdUDPServer1UDPRead(AThread: TIdUDPListenerThread;
const AData: TIdBytes; ABinding: TIdSocketHandle);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
{$R *.fmx}
procedure TForm2.Button2Click(Sender: TObject);
begin
Form2.IdUDPServer1.Active:=true;
end;
procedure TForm2.Button3Click(Sender: TObject);
begin
Form2.IdUDPServer1.Active:=false;
end;
procedure TForm2.FormCreate(Sender: TObject);
begin
end;
procedure TForm2.IdUDPServer1UDPRead(AThread: TIdUDPListenerThread;
const AData: TIdBytes; ABinding: TIdSocketHandle);
var
ss:TStringStream; //сохранять буквы будем тут
s,buff:String; //вспомогательные переменные
begin
ss:=TStringStream.create(''); //создаем пустую строку
ss.write(adata[0],length(adata)); //записываем в нее данные из потока байт
s:=ss.DataString; //преобразовываем ее в текст
ss:=TStringStream.create(''); //создаем пустую строку
ss.write(adata[0],length(adata)); //записываем в нее данные из потока байт
s:=ss.DataString; //преобразовываем ее в текст
end;
procedure TForm2.Timer1Timer(Sender: TObject);
begin
if form2.IdUDPServer1.Active=true then
begin
label2.Text:='Server On - port 8488';
end
else
label2.Text:='Server Off';
end;
end.
Сервер не принимает сообщения