我正在尝试编写代码以接收来自另一个应用程序的广播消息。使用wireShark,我可以看到它们已发送到255.255.255.255:300。
我尝试了以下代码:
IPEndPoint ServerEndPoint = new IPEndPoint(IPAddress.Any, 3000);
Socket WinSocket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
WinSocket.Bind(ServerEndPoint);
byte[] data = new byte[10];
Console.Write("Waiting for client");
IPEndPoint sender = new IPEndPoint(IPAddress.Any, 0);
EndPoint Remote = (EndPoint)(sender);
int recv = WinSocket.ReceiveFrom(data, ref Remote);
Console.WriteLine("Message received from {0}:", Remote.ToString());
string str = Encoding.ASCII.GetString(data, 0, recv);
但是当我的应用程序到达“ bind”命令时,出现错误消息: “通常,每个套接字地址(协议/网络地址/端口)只能使用一种”
如果更改端口,则没有错误,但我什么也没发现。
请咨询