Caros amigos, tenho uma aplicação de chat no delphi e gostaria de mandar uma mensagem privada do servidor para um determinado cliente, esse é o código base:
procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
var
i: integer;
begin
Memo1.Text:=Memo1.Text+' '+Socket.ReceiveText+#13#10;
Memo2.Lines.Add(Memo1.Text);
//essa parte recebe os dados e reenvia para os clientes(broadcast)
for i:=0 to ServerSocket1.Socket.ActiveConnections-1 do
ServerSocket1.Socket.Connections[i].SendText(Memo1.Text);
Memo1.Text:=' ';
end;
//fim do reader
// começa a listar os clientes conectados
procedure TForm1.ServerSocket1ClientConnect(Sender: TObject;
Socket: TCustomWinSocket);
var
i: integer;
l: tlistitem;
begin
l:=lv.Items.Add;
l.Caption:= inttostr(socket.Handle); //cria um handle para o cliente
l.SubItems.Add(socket.RemoteAddress); //mostra o ip do cliente conectado
l.SubItems.Add(i + 1); //aqui é problema.. como fazer um id com auto increment..
l.Data:=socket.Data;
end;
eu necessito saber o id dos clientes, para implementar esse código :ServerSocket1.Socket.Connections[número do cliente, id].SendText(Memo1.Text);.. só assim pode-se fazer uma espécie de mensagem privada entre o server e o cliente. :( :wacko: :unsure: :blink:
Pergunta
Roberto Paes
Caros amigos, tenho uma aplicação de chat no delphi e gostaria de mandar uma mensagem privada do servidor para um determinado cliente, esse é o código base:
eu necessito saber o id dos clientes, para implementar esse código :ServerSocket1.Socket.Connections[número do cliente, id].SendText(Memo1.Text);.. só assim pode-se fazer uma espécie de mensagem privada entre o server e o cliente. :( :wacko: :unsure: :blink:
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.