///发送按钮    ///    ///    ///    privatevoidbutton2_Click(objectsender,EventArgse)    {      try      {        IPEndPointclient=(IPEndPoint)this.comboBox1.SelectedItem;        if(client==null)        {          MessageBox.Show("没有选中任何在线客户端!");          return;        }        if(!this.server.clientCheck(client))        {          MessageBox.Show("目标客户端不在线!");          return;        }        server.sendMessage(client,textBox_msg.Text);      }      catch(ExceptionEx){MessageBox.Show(Ex.Message);}    }    ///    ///下面显示的    ///    ///    ///    privatevoidshow(IPEndPointipEndPoint,stringstr)    {      label_zt.Text=ipEndPoint.ToString()":"str;      label_all.Text="当前在线人数:"this.server.ClientNumber.ToString();    }    ///    ///当组合框按下的时候    ///    ///    ///    privatevoidcomboBox1_DropDown_1(objectsender,EventArgse)    {      try      {        Listlist=this.server.ClientAll;        this.comboBox1.DataSource=list;      }      catch{}    }    ///    ///关闭客户端的按钮    ///    ///    ///    privatevoidbutton3_Click_1(objectsender,EventArgse)    {      IPEndPointclient=(IPEndPoint)this.comboBox1.SelectedItem;      if(client==null)      {        MessageBox.Show("没有选中任何在线客户端!");        return;      }      if(!this.server.clientCheck(client))      {        MessageBox.Show("目标客户端不在线!");        return;      }      server.clientClose(client);    }    #endregion-IMDN开发者社群-imdn.cn">     ///发送按钮    ///    ///    ///    privatevoidbutton2_Click(objectsender,EventArgse)    {      try      {        IPEndPointclient=(IPEndPoint)this.comboBox1.SelectedItem;        if(client==null)        {          MessageBox.Show("没有选中任何在线客户端!");          return;        }        if(!this.server.clientCheck(client))        {          MessageBox.Show("目标客户端不在线!");          return;        }        server.sendMessage(client,textBox_msg.Text);      }      catch(ExceptionEx){MessageBox.Show(Ex.Message);}    }    ///    ///下面显示的    ///    ///    ///    privatevoidshow(IPEndPointipEndPoint,stringstr)    {      label_zt.Text=ipEndPoint.ToString()":"str;      label_all.Text="当前在线人数:"this.server.ClientNumber.ToString();    }    ///    ///当组合框按下的时候    ///    ///    ///    privatevoidcomboBox1_DropDown_1(objectsender,EventArgse)    {      try      {        Listlist=this.server.ClientAll;        this.comboBox1.DataSource=list;      }      catch{}    }    ///    ///关闭客户端的按钮    ///    ///    ///    privatevoidbutton3_Click_1(objectsender,EventArgse)    {      IPEndPointclient=(IPEndPoint)this.comboBox1.SelectedItem;      if(client==null)      {        MessageBox.Show("没有选中任何在线客户端!");        return;      }      if(!this.server.clientCheck(client))      {        MessageBox.Show("目标客户端不在线!");        return;      }      server.clientClose(client);    }    #endregion - IMDN开发者社群-imdn.cn">
登录
首页 » C# » C#实现Socket通讯Demo

C#实现Socket通讯Demo

于 2021-08-22 发布
0 289
下载积分: 1 下载次数: 1

代码说明:

c#通过Socket实现图片、文件和文字的通讯。 private void button1_Click(object sender, EventArgs e)         {                          try             {                 server = TxStart.startServer(int.Parse(textBox_port.Text));                 server.AcceptString = new TxDelegate(acceptString);                 server.AcceptByte = new TxDelegate(acceptBytes);                 server.Connect = new TxDelegate(connect);                 server.dateSuccess = new TxDelegate(dateSuccess);                 server.Disconnection = new TxDelegate(disconnection);                 server.EngineClose = new TxDelegate(engineClose);                 server.EngineLost = new TxDelegate(engineLost);                 //server.BufferSize=12048;                 //server.FileLog = "C:\test.txt";                 server.StartEngine();                 this.button1.Enabled = false;                 this.button2.Enabled = true;                 this.button3.Enabled = true;             }             catch (Exception Ex) { MessageBox.Show(Ex.Message); }                       }         ///         /// 发送按钮         ///         ///         ///         private void button2_Click(object sender, EventArgs e)         {             try             {                 IPEndPoint client = (IPEndPoint)this.comboBox1.SelectedItem;                 if (client == null)                 {                     MessageBox.Show("没有选中任何在线客户端!");                     return;                 }                 if (!this.server.clientCheck(client))                 {                     MessageBox.Show("目标客户端不在线!");                     return;                 }                 server.sendMessage(client, textBox_msg.Text);             }             catch (Exception Ex) { MessageBox.Show(Ex.Message); }         }         ///         /// 下面显示的         ///         ///         ///         private void show(IPEndPoint ipEndPoint, string str)         {             label_zt.Text = ipEndPoint.ToString() ":" str;             label_all.Text = "当前在线人数:" this.server.ClientNumber.ToString();         }         ///         /// 当组合框按下的时候         ///         ///         ///         private void comboBox1_DropDown_1(object sender, EventArgs e)         {             try             {                 List list = this.server.ClientAll;                 this.comboBox1.DataSource = list;             }             catch { }         }         ///         /// 关闭客户端的按钮         ///         ///         ///         private void button3_Click_1(object sender, EventArgs e)         {             IPEndPoint client = (IPEndPoint)this.comboBox1.SelectedItem;             if (client == null)             {                 MessageBox.Show("没有选中任何在线客户端!");                 return;             }             if (!this.server.clientCheck(client))             {                 MessageBox.Show("目标客户端不在线!");                 return;             }             server.clientClose(client);         }         #endregion

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • 实现按照姓名进行排序的算法
    该程序能够实现按照中文的姓名(字母顺序)进行排序
    2013-08-13下载
    积分:1
  • asp 实现支付宝交易接口代码
    asp 实现支付宝交易接口代码
    2015-04-16下载
    积分:1
  • ASP.NET学生管理系统(论文+源码+数据库)
    通过调研目前教学管理系统中的成绩管理子系统,了解成绩管理子系统的业务流程;通过分析比较,结合用户对成绩管理子系统的改进意见与实现情况,运用面向对象思想方法,设计和实现一个满足功能和性能,并有所创新的成绩管理子系统,以提高成绩管理的自动化、友好性等。本系统基于.NET平台和SQL Server数据库,通过毕业设计,可以使学生对.NET结构下开发B/S模式的分布式三层数据库系统有一个全面的了解。本系统从功能上划分可分为以下几大模块:功能模块管理,组权限管理,学生信息管理,课程信息管理,学生成绩管理,授课信息管理,学生信息查询,学生成绩统计等几大模块。以下将对各子模块进行说明。功能模块管理:将系统功能模块保存到数据库中以便于动态地进行不同用户组权限的分配等操作。本模块包括功能模块的添加,删除,修改等。组权限管理:对用户进行分组,并将权限设置到不同的用户组。学生信息管理模块:输入学生基本信息,并可以对学生信息进行添加、查询、修改、删除。还可以关键字查询并从数据库里调出的学生基本信息.输出学生基本信息,学号、班号、姓名查询的信息结果。课程信息管理:设置课程号,课程名,先修课等课程信息。成绩信息管理模块:输入成绩信息,并可以对成绩信息进行添加、查询、修改、删除。还可以用关键字查询并调出数据库里的学生基本成绩信息的修改、删除等。输出查询的学生成绩信息。授课信息管理:对教师授课信息的调度,安排等信息的管理。学生信息查询:本模块是可对学生成绩进行查询,可按学号,姓名,年龄,所在院系,入学年份等不同条件独立查询或进行模糊查询。学生成绩统计:对学生成绩总分,平均分等进行统计。
    2019-04-14下载
    积分:1
  • C# 台达PLC485通信实例
    【实例简介】
    2021-08-23 00:31:05下载
    积分:1
  • C# 二进制文件读写示例(dat文件)
    C# 二进制文件读写示例(dat文件)
    2018-06-08下载
    积分:1
  • EXCEL导入、导出、存储过程运算工具 例子
    DataPie可以实现SQL server 2008、ORACLE与ACCESS 2007数据库的导入、导出、存储过程计算。支持EXCEL2007、EXCEL2003、ACCESS2007、CSV文件导入数据库,支持CSV文件转EXCEL文件,支持大数据量表通过多个EXCEL工作簿导出。
    2013-08-05下载
    积分:1
  • 开源的.net矢量图、流程图绘制软件 Netron2009
    .net开源的矢量图、流程图这绘制软件,对学习.Net项目中的MVC架构、C#编程、GDI 图像处理、实现应用程序的撤消与重做等其他很多知识都有很好的帮助。
    2014-10-27下载
    积分:1
  • C# 6.0 and the .NET 4.6 Framework(7th).pdf
    C#学习PDF
    2020-12-06下载
    积分:1
  • win32封装(含最新版win32 api chm文档)
    首先,我对于本文的作者骗人的行为很不爽,从开篇来看是详细分析 API 的文章,但是这部分内容只有 18 面,后边的大量篇幅全是 API 函数大全。很明显,这是一篇拼凑出来的东西,为了刷分用的,所以我特意重新发出来,免费之!不过前面这段文字对于 API 入门确实挺有用,值得看看。如果想深入点学习 API,强烈推荐 VB 学习之 API 教程系列(共七课)。网上有单独的章节,我在另一个文档中已经将七课合并,并且加入补充章节----《逻辑坐标与设备坐标》,免去大家来回找的麻烦。一、API 是什么?这个我本来不想说的,不过也许你知道其它人不知道,这里为了照顾一下新手,不得不说些废话,请大家谅解。Win32 API 即为 Microsoft 32 位平台的应用程序编程接口(Application ProgrammingInterface)。所有在Win32 平台上运行的应用程序都可以调用这些函数。使用 Win32 API,应用程序可以充分挖掘 Windows 的 32 位操作系统的潜力。Mircrosoft的所有 32 位平台都支持统一的 API,包括函数、结构、消息、宏及接口。使用 Win32 API不但可以开发出在各种平台上都能成功运行的应用程序,而且也可以充分利用每个平台特有的功能和属性。以上为 API 的相关介绍,不过有些新手看了以后可能还是不怎么明白 API 到底有什么用?这里请不要着急,如果你有足够耐心的话,请慢慢往下看。二、如何使用 API?估计这才是大家真正关心的,那么如何使用 API 呢?在了解 API 之前,先打开你的 VB书,翻到过程函数这章来,在搞清楚 API 之前应该先搞懂过程函数是怎么一回事!如果你还不知道过程的工作方式,那么请先不要急着往下看,那样容易走很多弯路。好了,当你理解了过程函数时,也就是你可以使用 API 的时候了,别把 API 看得太难,你就像使用过程函数一样使用 API 就可以了。首先,让我们看看一个简单的 API,以下:Private Declare Sub Sleep Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Long)以上这个 API 的呢是起一个延时作用。你如果是刚接触 API 的话可能会感到 API 的书写及其复杂,而且会感到很不适应。其实这没什么的,慢慢习惯就好了。至于 API 这些复杂的书写你就不用操心了,在你安装 VB 的时候微软已经帮我们带上了 API 浏览器,这些全部都可以利用 API 浏览器帮我们自动生成。API 浏览器的位置位于[开始菜单-程序-Microsoft Visual Basic 6.0 中文版-Microsoft Visual Basic 6.0 中文版工具-API 文本浏览器]。打开 API 浏览器,在最上面的一个文本框中输入 Sleep,这时下面列表框中就会自动显示相应的 API 函数,然后点右边添加按钮即可,接着点击复制按钮,这时你就可以用 Ctrl V把声明的 API 添加到 VB 代码窗口中了。
    2015-01-04下载
    积分:1
  • 重写winfrom UI控件
    重写winfrom UI控件
    2020-12-02下载
    积分:1
  • 696516资源总数
  • 106571会员总数
  • 2今日下载