- PR -

チャット(Windowsアプリケーション)作成

1
投稿者投稿内容
ごんた
会議室デビュー日: 2003/10/24
投稿数: 2
投稿日時: 2004-11-17 15:33
「Visual C#.netではじめるTCPネットワークプログラミング」という本を参考にしてチャット風のプログラムを作っています。

サーバとクライアント(1台)間のメッセージ送受信ができるところまで作成しました。

しかし、クライアントが複数の時にどのように全クライアントにメッセージを送ったらいいのかわかりません。
クライアントAの書き込みをクライアントB、Cに表示するという場合の処理です。
私が作成したプログラムでは、最後に接続したクライアントにしかサーバからのメッセージが送れないのです。

過去のスレッドでそれらしいものを読みましたが理解できませんでした。よろしくお願いします。

コブラ
ぬし
会議室デビュー日: 2003/07/18
投稿数: 1038
お住まい・勤務地: 神奈川
投稿日時: 2004-11-17 19:45
select() で他のクライアントからの入力待って、新規接続のソケットやったらFD_SET()
既に接続されてるクライアントのソケットを for文中で FD_ISSET() 呼んで
全ソケットのディスクリプター一遍にチェックしながら、接続されておれば同じバッファ
をバンバン write();
ごんた
会議室デビュー日: 2003/10/24
投稿数: 2
投稿日時: 2004-11-18 10:20
返信ありがとうございます

各クライアントのソケットをArrayListにもってfor文でバンバンwrite()したらできました。
1回write()したら全員に送れるのかな?なんて思っていました。

1

スキルアップ/キャリアアップ(JOB@IT)