本帖最后由 Blue_Pen 于 2018-4-25 12:21 编辑
BinGoo系列之Socket组件《三、客户端+服务端组件的封装》 控件版 简介:
说明: 此通讯类库封装了AxTcpServer、AxTcpClient、AxUdpClient三大通讯组件
2016-10-20新增ITcpServer、ITcpClient两个组件,该组件采用异步传输处理方式,高效数据并发,开启和关闭方法和AxTcpServer、AxTcpClient用法一致 详细更新信息请跳转至更新日志详细说明
1.AxTcpServer介绍: - TCP服务端,和之前的类库用法差不多,启动时只需在组件属性栏中设置好监听IP,端口。
- 启动代码:AxTcpServer.Start();停止监听代码:AxTcpServer.Stop();
- 预览图:
-
-
2.AxTcpClient介绍: - TCP服务端,在属性界面设置好服务端IP和端口。
- 启动时代码AxTcpClient.StartConnection();
- 预览图:
-
-
3.AxUdpClient介绍: - UDP客户端,在属性界面设置好服务端IP和端口。
- 启动时代码AxUdpClient.Start();
- 预览图:
-
-
更新日志:
更新日期:2015-05-29
- 优化传输协议,所有消息以原始数据byte[]数组类型接收,不做任何处理。
- UDP新增属性“IsAxUdpClientAgreement”:是否使用内部传输协议,若使用则两边的客户端都必须使用这个组件来传输文件,若不使用内部协议则可接受任意UDP客户端传输过来的原始数据。
- Demo新增是否以十六进制显示数据和是否以十六进制发送数据
以下是更新版本:
更新时间:2015-11-30
修复局部问题,心跳包检测机制,踢出已断开的客户端
里面ClientModel.cs文件中可根据自己需求修改判断客户端类型
更新时间:2016-01-14
修改TCPClient的StopConnection方法,更稳定
修改其他局部小细节
更新时间:2016-04-24
修复断开连接清除客户端BUG
TCPServer服务端新增自动识别WebSocket客户端,可与WebSocket客户端直接通讯
修改其他变量名称定义
更新时间:2016-8-05
修复关闭线程BUG
添加TCPServer和TCPClient的使用案例
添加WebSocket客户端与TCPServer服务端直接通讯案例,参见如下附录1:
附带1:此乃君临写的WebSocket客户端,通讯效果如下图所示
更新时间:2016-10-20
1、新增ITcpServer服务端组件和ITcpClient客户端组件
属性以及用法基本没有改变,优点:数据采用异步传输,高性能并发。
2、数据处理事件可直接操作UI,无须再写委托或Invoke。
3、修改局部属性名称,修复心跳检测机制
之前的AxTcpServer和AxTcpClient任然保留。
附带压力测试Demo,经测试5000个客户端无压力,以下是测试截图
更新时间:2016-10-25
1、修复双击注册时,参数类型意外改变
更新时间:2016-11-28
1、修复ITcpClient发送数据方法
2、修复ITcpClient连接状态改变事件的Bug
更新时间:2018-04-25
1、正式改名为NetWorkHelper
2、新增常用方法,
如文件操作类FileHelper,
实体类与XML互转XmlHelper、常用的Byte、二进制、十进制、十八等数字,数组字符串之间的转换类、
系统常用功能类等
2、修复ITcpClient重连Bug及其他代码优化
本帖中所有组件各版本源码统一网盘中下载,【异步通讯高性能并发版本及其他个版本】网盘下载地址
|