• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#socket编程使用udp实现单对单的连接对话

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
ipLocalPoint = new IPEndPoint(IPAddress.Parse("192.168.31.122"), 5000);

            //定义网络类型,数据连接类型和网络协议UDP 
            mySocket = new Socket
   (AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);

            //绑定网络地址 
            mySocket.Bind(ipLocalPoint);

            //得到客户机IP 
            IPAddress ip = IPAddress.Parse("192.168.31.127");
            int port = 5000;
            IPEndPoint ipep = new IPEndPoint(ip, port);
            RemotePoint = (EndPoint)(ipep);

            //启动一个新的线程,执行方法this.ReceiveHandle, 
            //以便在一个独立的进程中执行数据接收的操作 

            RunningFlag = true;
            Thread thread = new Thread(new ThreadStart(this.ReceiveHandle));
            thread.Start();

  //ReceiveHandle数据接收函数

  //接收数据处理线程 
            string msg;
            byte[] data = new byte[1024];
            MyInvoke myI = new MyInvoke(UpdateMsgTextBox);
            while (RunningFlag)
            {

                if (mySocket == null || mySocket.Available < 1)
                {
                    Thread.Sleep(200);
                    continue;
                }
                //跨线程调用控件 
                //接收UDP数据报,引用参数RemotePoint获得源地址 
                int rlen = mySocket.ReceiveFrom(data, ref RemotePoint);
                msg = Encoding.Default.GetString(data, 0, rlen);
                tbMsg.BeginInvoke
                    (myI, new object[] { RemotePoint.ToString() + " : " + msg });

            }

  //发送udp数据包

    string msg;
            msg = tbSendMsg.Text;
            //发送UDP数据包 
            byte[] data = Encoding.Default.GetBytes(msg);
            mySocket.SendTo(data, data.Length, SocketFlags.None, RemotePoint);

  //更新接收的消息到winform

     //接收数据显示 
            this.tbMsg.AppendText(msg + "\n");

  


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C#地磅串口编程发布时间:2022-07-10
下一篇:
C#实现QQ式截图功能发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap