UdpClient Uclient=new UdpClient(2112);
UdpClient Uclient=new UdpClient();
这两种有什么区别啊?

解决方案 »

  1.   

    我写的Win程序时,必须用绑定端口的实例,这是什么原因啊?
    Win的代码:
    private IPEndPoint hostPoint;
    private IPEndPoint remotePoint=new IPEndPoint(IPAddress.Any, 0);
    private UdpClient client=new UdpClient(2112);
    private System.Windows.Forms.Label label2;
    private System.Windows.Forms.TextBox txtPort;
    private Thread listenThread;
    ...
    private void btnSend_Click(object sender, System.EventArgs e)
    {
    hostPoint = new IPEndPoint(IPAddress.Parse(txtserverIP.Text), int.Parse(txtPort.Text));
    Encoding encod=Encoding.UTF8;
    byte[] Message=encod.GetBytes(richTxtSend.Text);
    client.Send(Message,Message.Length, hostPoint);
    } public void UDPListen()
    {
    byte[] buffer;
    while (true)
    {
    buffer = client.Receive(ref remotePoint);
    Encoding encod=Encoding.UTF8;  
    string returnData = encod.GetString(buffer);
    richTxtHistory.Text=richTxtHistory.Text+"信息来自IP:"+remotePoint.Address.ToString()+" 端口:"+remotePoint.Port+"\r\n"+returnData+"\r\n"+"\r\n";
    }
    }
      

  2.   

    在建立了套接字之后,必须把它绑定到系统中一个指定的网络地址和端口,或绑定到一个远程网络地址端口,一旦套接字被绑定,就可以用它在网络上发送和接收数据。UdpClient   Uclient=new   UdpClient(2112); 
    是直接绑定, client.Send(Message,Message.Length, hostPoint);
    这样是绑定到hostPoint上面,都要绑定的
      

  3.   

    UdpClient   Uclient=new   UdpClient(); 
    ====
    此构造函数创建一个新的 UdpClient,并允许基础服务提供程序分配最合适的本地 IPv4 地址和端口号。
    自动分配端口号