serversocketを使って、現在接続しているクライアント全員に1度だけメッセージを送信する方法はありませんか。
for i:=0 to serversocket1.socket.activeconnection-1 do
begin
serversocket1.socket.connection[i].sendText('message');
end;
以上のようにしてみたのですが、これは、クライアントが全員接続しているという条件のもとでしか出来ないことにきづきました。
例えば、10人のクライアントが接続したとして、次の瞬間、クライアントが一人でも切断していた場合(serversocket1.socket.connection[0]と接続していたクライアントが切断したとする)、activeconnection-1は8を返します。これだと、serversocket1.socket.connection[9]のクライアントにはメッセージが送信されないことになります。また、接続していないconnection[0]にもメッセージを送信してしまいます。
何とか、サーバと接続しているクライアント全員に1度だけメッセージを送る方法はありませんか??