现在正在编写一个纯P2P的聊天,文件传输程序,但是在使用Socket发送有限广播(地址255.255.255.255),编译器会报异常,代码如下:
Socket temp=new Socket (AddressFamily .InterNetwork ,SocketType.Dgram ,ProtocolType.Udp );
IPAddress [] localIP=Dns.GetHostAddresses (Dns.GetHostName ());
string localHost = Environment.UserName;
string InitialInformation = "JOIN" + "/" + localIP[0].ToString() + "/" + "5000" + "/" + localHost;
Byte[] buffer = Encoding.Unicode.GetBytes(InitialInformation);
//IPAddress .Broadcast为有限广播地址255.255.255.255
IPEndPoint remotEndPoint=new IPEndPoint (IPAddress .Broadcast,5000);
temp.SendTo (buffer ,remotEndPoint );//异常处....
异常提示:
未处理 System.Net.Sockets.SocketException
Message="以一种访问权限不允许的方式做了一个访问套接字的尝试。"
Source="System"
ErrorCode=10013
NativeErrorCode=10013
StackTrace:
在 System.Net.Sockets.Socket.SendTo(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags, EndPoint remoteEP)
在 System.Net.Sockets.Socket.SendTo(Byte[] buffer, EndPoint remoteEP)
请达人指点,在此先谢谢了!
Socket temp=new Socket (AddressFamily .InterNetwork ,SocketType.Dgram ,ProtocolType.Udp );
IPAddress [] localIP=Dns.GetHostAddresses (Dns.GetHostName ());
string localHost = Environment.UserName;
string InitialInformation = "JOIN" + "/" + localIP[0].ToString() + "/" + "5000" + "/" + localHost;
Byte[] buffer = Encoding.Unicode.GetBytes(InitialInformation);
//IPAddress .Broadcast为有限广播地址255.255.255.255
IPEndPoint remotEndPoint=new IPEndPoint (IPAddress .Broadcast,5000);
temp.SendTo (buffer ,remotEndPoint );//异常处....
异常提示:
未处理 System.Net.Sockets.SocketException
Message="以一种访问权限不允许的方式做了一个访问套接字的尝试。"
Source="System"
ErrorCode=10013
NativeErrorCode=10013
StackTrace:
在 System.Net.Sockets.Socket.SendTo(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags, EndPoint remoteEP)
在 System.Net.Sockets.Socket.SendTo(Byte[] buffer, EndPoint remoteEP)
请达人指点,在此先谢谢了!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货