当前位置: 首页 > news >正文

郑州网站建设推销网站如果不续费会怎样

郑州网站建设推销,网站如果不续费会怎样,163 邮箱,wordpress产品页面没有分类选择本专题主要介绍下如何实现UDP广播的程序#xff0c;下面就直接介绍实现过程和代码以及运行的结果。 一、程序实现 UDP广播程序的实现代码#xff1a; using System; using System.Net; using System.Net.Sockets; using System.Text; using System.Threading; using System.W… 本专题主要介绍下如何实现UDP广播的程序下面就直接介绍实现过程和代码以及运行的结果。 一、程序实现 UDP广播程序的实现代码   using System; using System.Net; using System.Net.Sockets; using System.Text; using System.Threading; using System.Windows.Forms;namespace UDPBroadcast {/// summary/// 在界面上用户可以设置本地进程的IP地址和端口号并将地址加入某个组播组/// 可以输入发送消息的目的组的地址并且勾选“广播”复选框将采用广播的方式发送信息/// 在界面上点击“接受按钮”就启动接收线程这样程序就可以接收广播或组播的信息/// /summarypublic partial class UdpBroadcasefrm : Form{private UdpClient sendUdpClient;private UdpClient receiveUdpClient;// 组播IP地址IPEndPoint broadcastIpEndPoint;public UdpBroadcasefrm(){InitializeComponent();IPAddress[] ips Dns.GetHostAddresses(Dns.GetHostName());tbxlocalip.Text ips[5].ToString();tbxlocalport.Text 8002;// 默认组,组播地址是有范围// 具体关于组播和广播的介绍参照我上一篇博客UDP编程// 本地组播组tbxGroupIp.Text 224.0.0.1;// 发送到的组播组tbxSendToGroupIp.Text 224.0.0.1;}// 设置加入组private void chkbxJoinGtoup_Click(object sender, EventArgs e){if (chkbxJoinGtoup.Checked true){tbxGroupIp.Enabled false;}else{tbxGroupIp.Enabled true;tbxGroupIp.Focus();}}// 选择发送模式后设置private void chkbxBroadcast_Click(object sender, EventArgs e){if (chkbxBroadcast.Checked true){tbxSendToGroupIp.Enabled false;}else{tbxSendToGroupIp.Enabled true;tbxSendToGroupIp.Focus();}}// 发送消息private void btnSend_Click(object sender, EventArgs e){if (tbxMessageSend.Text ){MessageBox.Show(消息内容不能为空,提示);return;}// 根据选择的模式发送信息if (chkbxBroadcast.Checked true){// 广播模式(自动获得子网中的IP广播地址)broadcastIpEndPoint new IPEndPoint(IPAddress.Broadcast, 8002);}else{// 组播模式broadcastIpEndPoint new IPEndPoint(IPAddress.Parse(tbxSendToGroupIp.Text), 8002);}// 启动发送线程发送消息Thread sendThread new Thread(SendMessage);sendThread.Start(tbxMessageSend.Text);}// 发送消息private void SendMessage(object obj){string message obj.ToString();byte[] messagebytes Encoding.Unicode.GetBytes(message);sendUdpClient new UdpClient();// 发送消息到组播或广播地址sendUdpClient.Send(messagebytes, messagebytes.Length, broadcastIpEndPoint);sendUdpClient.Close();// 清空编辑消息框ResetMessageText(tbxMessageSend);}// 利用委托回调机制来实现界面上的消息清空操作delegate void ResetMessageTextCallBack(TextBox textbox);private void ResetMessageText(TextBox textbox){if (textbox.InvokeRequired){ResetMessageTextCallBack resetMessageCallback ResetMessageText;textbox.Invoke(resetMessageCallback, new object[] { textbox });}else{textbox.Clear();textbox.Focus();}}// 接收消息private void btnReceive_Click(object sender, EventArgs e){chkbxJoinGtoup.Enabled false;// 创建接收套接字IPAddress localIp IPAddress.Parse(tbxlocalip.Text);IPEndPoint localIpEndPoint new IPEndPoint(localIp, int.Parse(tbxlocalport.Text));receiveUdpClient new UdpClient(localIpEndPoint);// 加入组播组if (chkbxJoinGtoup.Checked true){receiveUdpClient.JoinMulticastGroup(IPAddress.Parse(tbxGroupIp.Text));receiveUdpClient.Ttl 50;}// 启动接受线程Thread threadReceive new Thread(ReceiveMessage);threadReceive.Start();}// 接受消息方法private void ReceiveMessage(){IPEndPoint remoteIpEndPoint new IPEndPoint(IPAddress.Any, 0);while (true){try{// 关闭receiveUdpClient时此时会产生异常byte[] receiveBytes receiveUdpClient.Receive(ref remoteIpEndPoint);string receivemessage Encoding.Unicode.GetString(receiveBytes);// 显示消息内容ShowMessage(lstMessageBox, string.Format({0}[{1}], remoteIpEndPoint, receivemessage));}catch{break;}}}// 通过委托回调机制显示消息内容delegate void ShowMessageCallBack(ListBox listbox,string text);private void ShowMessage(ListBox listbox, string text){if (listbox.InvokeRequired){ShowMessageCallBack showmessageCallback ShowMessage;listbox.Invoke(showmessageCallback, new object[] { listbox, text });}else{listbox.Items.Add(text);listbox.SelectedIndex listbox.Items.Count - 1;listbox.ClearSelected();}}// 清空消息列表private void btnClear_Click(object sender, EventArgs e){lstMessageBox.Items.Clear();}// 停止接收private void btnStop_Click(object sender, EventArgs e){chkbxJoinGtoup.Enabled true;receiveUdpClient.Close();}} } 广播演示结果接收端直接点接收按钮后开启接受线程在发送端勾选“广播选项”输入发送信息点发送按钮后的界面如下   下面通过把接收端加入组后的结果首先终止接收线程然后勾选“加入组”复选框然后单击“接收”按钮重新开启接收线程输出结果如下 从广播演示的两个情况可以看出广播消息会同时向网上的一切进程转发无论这个进程是独立的还是加入了某个组播组中的进程都可以接收广播消息 下面演示下组播的结果 如果把接收端的组地址改为224.0.0.3时此时发送端发送的消息“组播演示2”将不会发送到不同的组播地址则接收端就接收不到此时的消息。 从组播结果中可以看出只有加入组播地址224.0.0.2的进程才能接收到信息。   需要注意的地方是从前面的截图中可以看出不论是广播还是组播仅仅从收到的信息无从知道发送给它的进程的端口号所以广播和组播消息都是匿名发送并且通过对UDP广播和组播的理解可以简单实现一个消息群发的功能QQ的群里聊天就是这个原理。   二、 总结 本专题主要是针对上一专题的补充——实现一个简单的UDP广播组播程序通过这样一个发送端可以发送给在组播地址中的所有用户和所有子网中的所有用户。本专题可以说是对UDP编程的一个扩充吧希望大家看了本专题后可以对协议有大致的理解。在下一个专题中会和大家介绍下P2P编程的相关知识。  全部源码地址http://files.cnblogs.com/zhili/UDPBroadcast.zip   转载于:https://www.cnblogs.com/ShaYeBlog/archive/2012/09/26/2703991.html
http://www.pierceye.com/news/917622/

相关文章:

  • 网站后台 源码重庆电力公司网站
  • 泰安企业网站建设电话廉江手机网站建设公司
  • 自已建网站微信登录珠海绿网科技有限公司
  • 大良网站制作太原建筑公司网站
  • 网站开发的交付文档抖音代运营费用明细
  • 自适应网站建设沈阳网站安全建设需求
  • 列表主题wordpress国外seo综合查询
  • 装修网站怎么做推广做百度网站每年的费用多少
  • 网站搭建免费视频教程省企联网站建设要求
  • 天津大学生专业做网站建设网站价格
  • 携程网站建设进度及实施过程文具电子商务网站开发内容
  • 怎么查看网站打开速度网站源码整站下载
  • 北京城乡住房建设部网站常见的网络营销推广方式有哪些
  • 做网站的成本费用钱宝网站怎么做任务
  • 网站上的格式用html怎么做部队网站设计
  • 帮客户做网站内容社交网站有哪些如何做
  • 网站开发与设计实训总结两千字公众号制作的网站开发
  • 一个公司做2个产品网站怎么做的用html5做的网站素材
  • 内乡网站建设咸阳网站建设报价
  • 企业网站多少钱扶余手机网站开发
  • 做外汇网站卖判刑多少年如何找回网站后台密码
  • 怎么做优惠券网站asp.net mvc 5网站开发之美
  • 网站底部浮动电话广告福建住房和城乡建设部网站
  • 建站之星破解版wordpress 置顶排序
  • c2c网站代表和网址涟源市建设局网站
  • 哪个网站有免费的模板免费网上商城系统
  • 一个网站的建设需要什么东西前十强排名家装公司
  • 广州网站建设报价表石家庄搜索排名提升
  • 网站备案步骤企业网站手机版模板免费下载
  • 郑州高端品牌网站建设镇江网站营销推广