dポイントプレゼントキャンペーン実施中!

VC#とTCP/IPを利用したサーバープログラムを制作しています。
サーバーとクライアントの1対1での通信には成功したのですが、1つのサーバーで複数のクライアントと通信する方法がわかりません。
同じポート番号を利用できるのでしょうか。ただ単にTcpClientの配列を作ればいいのでしょうか。やはりクライアントの数だけスレッドを作らないといけないのでしょうか。
環境はWindowsVistaでMicrosoft Visual C# 2008 Express Editionを使用しています。
詳しい方がいましたらぜひ具体的なC#でのコード等を教えてください。
よろしくお願いいたします。

A 回答 (1件)

お疲れ様です。



基本的には、サーバは一つのポートしか使用しません。
クライアントから接続要求があるたびにアクセプトし、TcpClientを生成させるだけです。

作りかけで、一旦は動いたが汎用化を目指している途中で作りかけのソースを以下に置きます。
(少し改造しないと動かないです。)


http://hiroppi.ddo.jp:8080/computer/programming/
    • good
    • 0
この回答へのお礼

お疲れ様です。

回答を基にTcpClientとNetworkStream、動作するスレッドを
クライアントの数だけ配列にしたら解決できました。

どうもありがとうございました。

お礼日時:2010/04/18 12:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!