沐浴重生 2013-10-08 02:30 采纳率: 0%
浏览 2468

C # UDPClient 通讯连续发送消息

如何实现UDP通讯时的连续发送消息,目前我只实现发送一条消息就不能再发送,在网上搜找后说要使用多线程,但是我不会啊,请求高手指导》
Server:
private void btRec_Click(object sender, EventArgs e)
{
//在本機指定的端口接收
IPEndPoint remoteIpEndIPoint = new IPEndPoint(IPAddress.Any, 8002);
udpReceive = new UdpClient(remoteIpEndIPoint);
IPEndPoint iep = new IPEndPoint(IPAddress.Any, 0);
//接收從遠程主機發送過來的消息

//while (true)
//{
//ref表示引用類型 IPPoint實例接收消息

byte[] receiveBytes = udpReceive.Receive(ref iep);
string returnData = Encoding.UTF8.GetString(receiveBytes);
txtSerRev.Text = returnData;
string strBack = "I am fine. Your IP address is " +iep.ToString();
byte[] data = Encoding.ASCII.GetBytes(strBack);
udpReceive.Send(data,data.Length,iep);

       //}
    }

CLient :
private void btSendMsg_Click(object sender, EventArgs e)
{
//初始化UdpClient

udpSend = new UdpClient();
//實際使用時應將192.168.80.128該為服務器的遠程IP

IPAddress remoteIPAddress = IPAddress.Parse(txtServerIP.Text);

IPEndPoint remoteIPEndPoint = new IPEndPoint(remoteIPAddress, 8002);

//將發送內容轉換為字節數組

byte[] bytes = System.Text.Encoding.UTF8.GetBytes(txtSend.Text);

          udpSend.Send(bytes, bytes.Length, remoteIPEndPoint);


          bytes = udpSend.Receive(ref remoteIPEndPoint);


          string str = Encoding.UTF8.GetString(bytes, 0, bytes.Length);
          txtRec.Text = str;

    }
  • 写回答

1条回答 默认 最新

  • Ganker 2013-10-09 00:54
    关注

    http://download.csdn.net/detail/aasswwe/3887169

    你看看吧,或许对你有帮助

    评论

报告相同问题?

悬赏问题

  • ¥60 全一数分解素因子和素数循环节位数
  • ¥15 ffmpeg如何安装到虚拟环境
  • ¥188 寻找能做王者评分提取的
  • ¥15 matlab用simulink求解一个二阶微分方程,要求截图
  • ¥30 乘子法解约束最优化问题的matlab代码文件,最好有matlab代码文件
  • ¥15 写论文,需要数据支撑
  • ¥15 identifier of an instance of 类 was altered from xx to xx错误
  • ¥100 反编译微信小游戏求指导
  • ¥15 docker模式webrtc-streamer 无法播放公网rtsp
  • ¥15 学不会递归,理解不了汉诺塔参数变化