日期:2014-05-20  浏览次数:21082 次

.net(C#)写的服务程序在我本机不能绑定端口
.net(C#)写的服务程序在我本机不能绑定端口
代码如下:
C# code

this._sockOfRecv = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.IP);
this._sockOfRecv.Bind(this._localPoint);



如果发布我双击可运行的可执行文件没有问题,问题就出在Bind这句话上,请问这是怎么回事儿呢?
还请路过的大侠们看看。。

------解决方案--------------------
服务器
bind("10.10.2.6",2233)

客户端
Connect("10.10.2.6");
当然客户端也可以指定IP进行Connect
------解决方案--------------------
参考http://msdn.microsoft.com/zh-cn/library/system.net.sockets.socket.bind%28VS.80%29.aspx
------解决方案--------------------
C# code

 static void Main(string[] args)
        {
            int Port = Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["Port"]);
            int length;
            byte[] bytes = new byte[32768];
            string str = string.Empty;
            Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
            //参数1指定本机IP地址(此处指所有可用的IP地址),参数2指定接收用的端口
            IPEndPoint myHost = new IPEndPoint(IPAddress.Any, Port);
            //将本机IP地址和端口与套接字绑定,为接收做准备
            socket.Bind(myHost);
}