C#利用广播实现群发功能
来源:互联网 发布:淘宝十大平面男模特 编辑:程序博客网 时间:2024/06/05 00:55
C#利用广播实现群发功能
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;//添加的命名空间引用using System.Net;using System.Net.Sockets;using System.Threading;namespace BroadcastExample{ public partial class FormBroacast : Form { delegate void AppendStringCallback(string text); AppendStringCallback appendStringCallback; //使用的接收端口号 private int port = 8001; private UdpClient udpClient; public FormBroacast() { InitializeComponent(); appendStringCallback = new AppendStringCallback(AppendString); } private void FormBroacast_Load(object sender, EventArgs e) { Thread myThread = new Thread(ReceiveData); //将线程设为后台运行 myThread.IsBackground = true; myThread.Start(); } /// <summary> /// 在后台运行的接收线程 /// </summary> private void ReceiveData() { //在本机指定的端口接收 udpClient = new UdpClient(port); IPEndPoint remote = null; //接收从远程主机发送过来的信息; while (true) { try { //关闭udpClient时此句会产生异常 byte[] bytes = udpClient.Receive(ref remote); string str = Encoding.UTF8.GetString(bytes, 0, bytes.Length); AppendString(string.Format("来自{0}:{1}", remote, str)); } catch { //退出循环,结束线程 break; } } } /// <summary> /// 发送消息 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonSend_Click(object sender, EventArgs e) { UdpClient myUdpClient = new UdpClient(); try { //让其自动提供子网中的IP广播地址 IPEndPoint iep = new IPEndPoint(IPAddress.Broadcast, 8001); //将发送内容转换为字节数组 byte[] bytes =Encoding.UTF8.GetBytes(textBox1.Text); //向子网发送信息 myUdpClient.Send(bytes, bytes.Length, iep); textBox1.Clear(); textBox1.Focus(); } catch (Exception err) { MessageBox.Show(err.Message, "发送失败"); } finally { myUdpClient.Close(); } } private void FormBroacast_FormClosing(object sender, FormClosingEventArgs e) { udpClient.Close(); } private void AppendString(string text) { if (richTextBox1.InvokeRequired == true) { this.Invoke(appendStringCallback, text); } else { richTextBox1.AppendText(text + "\r\n"); } } }}
界面设计:
- C#利用广播实现群发功能
- C#利用广播实现群发功能
- c# UDP通过广播实现群发功能
- c# UDP通过广播实现群发功能
- c# UDP通过广播实现群发功能
- unix网络编程之利用select 实现群发的功能
- 利用广播实现强制下线功能
- 利用广播实现强制下线功能
- C#实现群发邮件
- C#实现群发邮件
- java实现短信群发功能
- java实现短信群发功能
- java实现邮箱群发功能
- Android之利用广播实现完全退出程序功能
- 利用C#实现生日提醒的功能
- 利用Visual C++ 实现QQ消息群发
- 利用Visual C++ 实现QQ消息群发
- Android下实现短信群发功能
- asp.net中的数据绑定详解
- android 发送短信 判断号码规则 判断字符数70
- 一个超棒的CSS属性排序工具 - CSScomb
- poj 2777 Count Color 线段树+位运算
- SQL 2008 SP2 找不到SQL Server Engine
- C#利用广播实现群发功能
- DevExpress的gridView导出Excel
- 32位和64位系统区别及int字节数
- 如何让IOS应用从容地崩溃
- Python学习笔记之集合类型(set, frozeset)
- Tomcat 下Web项目的定时任务
- asihttprequest
- 【C++泛型编程】基于策略(Policy)的类设计
- xCode 4.X 免证书真机公布及调试