begin
if OnServer.Checked=true then
begin //Отправка сообщений с сервера(Клиент нужно выбрать в ComboBox)
(ComboBox1.Items.Objects[Combobox1.ItemIndex] as TcustomIPClient).Sendln(message.Text);
TcpServer1.Close;
TcpServer1.Open;
end
else
begin //Отправка сообщений из клиента
TcpClient1.Sendln(message.text);
TcpClient1.Close;
TcpClient1.Open;
end;
end;
procedure TForm1.TcpServer1Accept(Sender: TObject;
ClientSocket: TCustomIpClient);
var s:string;
begin
ComboBox1.Items.AddObject(ClientSocket.RemoteHost+':'+ClientSocket.RemotePort,ClientSocket);
s:=ClientSocket.Receiveln; //принимаем сообщение от клиента
konsol.Lines.Add(s);
end;
Прием сообщений от TcpServer
Вопрос такой, как мне получить сообщение отосланное сервером?
Если есть у кого нибудь пример киньте плз.
Вот собственно мой быдло код)
Код:
А спам из подписи уберите.
Книжку обязательно посмотрю.
Если отправить сообщение с сервера, то оно придет только когда сервер будет остановлен.
Подскажите как это исправить!
Код:
procedure TForm1.Button1Click(Sender: TObject); //врубаем сервер
begin
host.Enabled:=false;
TcpServer1.LocalHost:='127.0.0.1';
TcpServer1.LocalPort:='6666';
TcpServer1.Active:=true;
end;
procedure TForm1.connectClick(Sender: TObject); //коннектимся к серверу
begin
TcpClient1.RemoteHost:='127.0.0.1';
TcpClient1.RemotePort:='6666';
TcpClient1.Active:=true;
end;
procedure TForm1.OnServerClick(Sender: TObject);
begin
Button1.Visible:=true;//показать(не показать) кнопку вкл. сервера
end;
procedure TForm1.sendClick(Sender: TObject); //отправка сообщений
begin
if OnServer.Checked=true then
begin //Отправка сообщений с сервера(Клиент нужно выбрать в ComboBox)
(ComboBox1.Items.Objects[Combobox1.ItemIndex] as TcustomIPClient).Sendln(message.Text);
TcpServer1.Close;
TcpServer1.Open;
end
else
begin //Отправка сообщений из клиента
TcpClient1.Sendln(message.text);
TcpClient1.Close;
TcpClient1.Open;
end;
end;
procedure TForm1.TcpClient1Connect(Sender: TObject);
begin
konsol.Lines.Add(TcpClient1.Receiveln()); //получаем сообщение от сервера
end;
procedure TForm1.TcpServer1Accept(Sender: TObject;
ClientSocket: TCustomIpClient);
var s:string;
begin
ComboBox1.Items.AddObject(ClientSocket.RemoteHost+':'+ClientSocket.RemotePort,ClientSocket);
s:=ClientSocket.Receiveln; //принимаем сообщение от клиента
konsol.Lines.Add(s);
end;
begin
host.Enabled:=false;
TcpServer1.LocalHost:='127.0.0.1';
TcpServer1.LocalPort:='6666';
TcpServer1.Active:=true;
end;
procedure TForm1.connectClick(Sender: TObject); //коннектимся к серверу
begin
TcpClient1.RemoteHost:='127.0.0.1';
TcpClient1.RemotePort:='6666';
TcpClient1.Active:=true;
end;
procedure TForm1.OnServerClick(Sender: TObject);
begin
Button1.Visible:=true;//показать(не показать) кнопку вкл. сервера
end;
procedure TForm1.sendClick(Sender: TObject); //отправка сообщений
begin
if OnServer.Checked=true then
begin //Отправка сообщений с сервера(Клиент нужно выбрать в ComboBox)
(ComboBox1.Items.Objects[Combobox1.ItemIndex] as TcustomIPClient).Sendln(message.Text);
TcpServer1.Close;
TcpServer1.Open;
end
else
begin //Отправка сообщений из клиента
TcpClient1.Sendln(message.text);
TcpClient1.Close;
TcpClient1.Open;
end;
end;
procedure TForm1.TcpClient1Connect(Sender: TObject);
begin
konsol.Lines.Add(TcpClient1.Receiveln()); //получаем сообщение от сервера
end;
procedure TForm1.TcpServer1Accept(Sender: TObject;
ClientSocket: TCustomIpClient);
var s:string;
begin
ComboBox1.Items.AddObject(ClientSocket.RemoteHost+':'+ClientSocket.RemotePort,ClientSocket);
s:=ClientSocket.Receiveln; //принимаем сообщение от клиента
konsol.Lines.Add(s);
end;