0

ブロードキャストするために、ソケットを作成しました。

 notifySock = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);

また、同じLANに接続されている他のすべてのコンピューターにコンピューターのホスト名を送信するために、send(Byte [] buffer)メソッドを使用しています。

 notifySock.Send(hostBuffer);

hostBufferには、コンピューターのホスト名が含まれています。

ただし、「データグラム」ソケットタイプを使用しているため、送信する必要のあるデータをフォーマットする必要がありますか。可能であれば、ソケットを作成してデータを送信するために入力した2行のコードの間に挿入する必要のあるコードを提供してください。

4

2 に答える 2

1

ユーザーアプリケーションからのブロードキャストには、通常、 UDPが使用されます。適切なプロトコル、つまり、UDPパケットに送信する情報をフォーマットする方法を設計する必要があります。

于 2009-04-02T06:46:48.180 に答える
0

あなたの例では、送信先を指定していません。次のようなものが必要です:

UdpClient notifySock = new UdpClient(endPoint);  
notifySock.Send(buffer, buffer.Length, new IPEndPoint(IPAddress.Broadcast, 1234)); 

LAN 上の他のホストが受信するには、UDP ポート 1234 でリッスンしている必要があります。

于 2009-04-02T07:39:49.830 に答える