2012-03-06 3 views
0

C#ソケットプログラムからクライアントにデータを送信するにはどうすればよいですか?NP304 3onedata C#ソケットは、サーバーからデバイスに直接送信します。

現在、私は2つのプログラム、サーバーとクライアントを持っています。

私のサーバーを起動してから、クライアントはサーバーに接続します。このように接続されていますが、サーバーからクライアントに直接送信したいのですか?

私のクライアントは独自の接続を開始できないので、私はもちろんクライアントのIPとポートを持っています。私のサーバーから既知のIPとポートを持つクライアントにデータを送信するにはどうすればいいですか?

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

+0

私はGoogleにこれを入力し、0.35秒で5900万の結果を得ました:Pそして、なぜあなたのクライアントは直接サーバーにデータを送信できませんか? – Jason

+0

私のクライアントはコンピュータではないので、電子デバイスからの入力をRS485ポート経由で取得し、LANポートを提供するデバイスなので、サーバ(コンピュータ)からクライアント(デバイス)、デバイスは私に –

答えて

0

クライアントは制御できるコンピュータプログラムではないため、実際にはサーバーから接続することはありません。クライアントがTCP通信を処理できる場合は、それらをサーバーとして扱い、サーバーから各クライアントに接続する必要があります(サーバー側のソケットを開き、各クライアントのIPとポートに接続します)。

クライアントがUDPでTCPを認識していない可能性があります。実際には、UDPソケットを1つ作成し、SendToを使用して各クライアント(クライアントごとに1つのSendTo呼び出し)にデータを送信するだけで済むので、実際には簡単になります。

は、私はそのCOM-ポートがお使いのデバイス上でTCP/IPプロトコルを実装するよりも、通信が少し簡単ですと言うでしょう

+0

お返事することができますが、私のクライアントが私に接続できないデバイスであることを悲しんだので!それはコンピュータではないので、私はそれに接続しようとする必要があります、まったく不可能ですか? –

+0

ああ、おっと、ありがとう。 – zmbq

+0

ありがとう、今あなたの提案は何ですか?私は本当に混乱しているよ!私は多くを検索しましたが、この問題を解決することはできません –

0

...ちょうどあなたのクライアントは、イーサネットレベルで立ち往生されていない期待しましょう。あなたのデバイスはCOMポートを読み書きできますか?

+0

私のコンバータデバイスは、COMポートを持っていない、私のシステム上の仮想COMポートを作成することができます、私は変換デバイスに自分のPCを接続するためにLANケーブルを使用します –

関連する問題