您的位置:首页 > 编程语言 > C#

C#发送和接收广播

2012-09-20 15:05 501 查看
public void sendBroadcast(string msg,int port)
{
Socket sock = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
IPEndPoint iep = new IPEndPoint(IPAddress.Broadcast, port);
byte[] data = Encoding.UTF8.GetBytes(msg);
sock.SetSocketOption(SocketOptionLevel.Socket,
SocketOptionName.Broadcast, 1);
sock.SendTo(data, iep);
sock.Close();
}

public void receiveBroadcast()
{
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);

IPEndPoint iep = new IPEndPoint(IPAddress.Any, 56789);

EndPoint ep = (EndPoint)iep;

socket.Bind(iep);

while (true)
{
byte[] buffer = new byte[1024];

socket.ReceiveFrom(buffer, ref ep);

MessageBox.Show(Encoding.UTF8.GetString(buffer));

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c# socket buffer byte string