1

TCPポートを(TcpListenerを介して)リッスンするサーバーがあり、そのサーバーへの(TcpClientを介した)5つの異なる接続があるとします。間違ったクライアントに間違った情報を提供せずに、ストリームを介して各自に情報を送信するにはどうすればよいですか。
例:
5つのクライアントがすべてサーバーに接続されています。「これはメッセージです」というメッセージをクライアント1に送信する必要がありますが、そのメッセージをクライアント2、3、4、および5に送信したくありません。「これは別のメッセージです」というメッセージもクライアント3に送信します。および5ですが、そのメッセージをクライアント1、2、および4に送信しません。
これを行うにはどうすればよいですか。

4

2 に答える 2

2

Socket を受け入れるか、AcceptTcpClient を呼び出すと、エンドポイントを使用してそれらを区別できます。どのエンドポイントに何を送信するかを知りたい場合は、接続元の IP やポートを使用してそれらを区別する必要があります。この投稿を参照して、getting-the-ip-address-of-a-remote-socket-endpointを実行する方法を確認できます

編集:たとえば、ここでデータを送受信する方法を見ることができます

于 2012-10-28T22:20:14.657 に答える
2

TcpListenerクラスにはメソッドAcceptSocketAcceptTcpClient. サーバーに接続するクライアントごとに異なるSocket(または) を返します。これらのオブジェクトを使用して、個々のクライアントにデータを送信します。TcpClient

于 2012-10-28T22:13:27.223 に答える