XEngine-V7.50.0.1001 Build20230224 其他问题 导出的函数参数类型不正确的问题 帮助组件 授权模块 本地授权增加了临时序列号验证CDKEY的功能 支持序列号使用次数验证,支持设置总次数 支持序列号过期日期验证 支持序列号无限制模式验证 本地验证获取验证CDKEY函数增加了序列号验证功能,可以优先验证序列号,失败在进行常规验证 本地验证对读写信息错误码进行了优化 本地验证读写配置优化临时缓存,现在不需要了 本地验证修正了写文件数据WIN下换行不正确导致的问题 核心组件 池管理模块 连接池修正类型定义还是老旧名称的问题 连接池现在调整大小不在对相同大小进行处理了 基础组件 基础模块 配置文件类增加了文件写64位整数配置项目的功能函数 配置文件类增加了内存读写整数型类型的功能函数 配置文件类修正写内存换行判断不正确导致崩溃的问题 ====================================================================================== XEngine-V7.49.0.1001 Build20230210 下载组件 BT下载模块已经移动到网络组件下面 HTTP下载模块已经合并到网络组件的网络客户端 客户端组件 客户端套接字模块 TCP扩展客户端修正插入客户端参数为NULL崩溃的问题 标准组件 HTTP服务模块 帮助类解析URL名称现在遇到参数可以正常截断了 帮助组件 数据库模块 MYSQL修正没有正确导出编码函数的问题 网络组件 网络客户端模块 增加了文件传输功能类,支持HTTP和FTP下载,合并于下载模块 文件传输类修改创建函数参数,range设置更加明确了 文件传输类创建参数现在需要指定上传还是下载了 文件传输类增加了启动下载函数功能,可以设置FTP传输模式了 文件传输类现在支持自定义上传下载的方法了 文件传输修正下载状态码没有正确对206,404进行处理的问题 修正导出的错误码获取函数名称不正确的问题 压力测试模块 已经被删除,开源集成到API查询服务中了 核心组件 核心服务模块 UDPXCore修改发送函数名称,与TCP的统一了 TCPXCore优化获取所有客户端列表函数性能 TCPSelect增加获取所有客户端列表的函数并且可以获取客户端数量 TCPSelect优化获取客户端注册回调函数的内部实现方式 TCPSelect修正主动读取网络事件不能为获取所有事件的问题 TCPSelect修正主动读取网络事件读取完毕后没有正常退出的问题 TCPSelect删除了获取客户端数量和发送消息给所有客户端的函数 TCPXPoll注册回调事件函数名称进行了修改 TCPXPoll发送函数的发送大小参数不在为指针 TCPXPoll增加获取所有客户端列表的函数并且可以获取客户端数量 UDPSelect修改启动函数,回调函数设置被单独分离为独立函数 UDPSelect启动设置回调参数被删除,没有意义 UDPSelect修正了回调没有设置导致的问题 基础组件 基础模块 字符串类获取路径类型修正绝对路径判断不正确导致的问题 ====================================================================================== XEngine-V7.48.0.1001 Build20230201 平台更新 IOS 增加NetHelp_APIHelp模块 Android 增加NetHelp_APIHelp模块 网络组件 网络函数模块 删除了HTTP相关请求函数 客户端组件 客户端套接字模块 TCP扩展客户端内部使用方法修改,现在支持插入和删除多个客户端 TCP扩展客户端现在发送,接受,是否连接需要传递指定套接字句柄了 TCP扩展客户端增加获取客户端列表的函数 TCP扩展客户端增加句柄和套接字互相获取的函数 TCP扩展客户端删除XClient_TCPSelect_GetAddrEx和XClient_TCPSelect_GetSocketEx函数 TCP扩展客户端修改创建连接的时候无法连接到服务器会直接返回失败了 TCP扩展客户端发送失败也会致连接状态为未连接了 TCP扩展客户端回调函数增加客户端句柄参数 TCP扩展客户端现在没有设置自动重连的客户端会自动释放资源了 TCP扩展客户端修改回调模式现在支持指定客户端句柄了 TCP扩展客户端修改现在初始化的回调函数必须设置了 帮助组件 数据库模块 删除了数据库句柄,现在统一采用XNETHANDLE句柄类型 标准组件 代理服务模块 隧道代理增加了获取客户端列表的函数 隧道代理增加了获取所有自定义数据列表的函数 SOCKS代理增加了获取客户端列表的函数 SOCKS代理增加了获取所有自定义数据列表的函数 核心组件 核心网络模块 套接字类删除了NetXApi_Socket_GetProtocolStatics功能函数 套接字类NetXApi_Socket_GetAddress现在支持IPV6版本了 套接字类修改NetXApi_Socket_ProcessNet为NetXApi_Socket_NetList,现在MAC和LINUX也通用了 ====================================================================================== XEngine-V7.47.0.1001 Build20230112 平台更新 IOS改造已经支持以下组件模块 基础组件(基础模块,算法模块) 核心组件(池管理模块,核心服务模块,协议模块,核心函数模块,黑白名单模块) 客户端组件(客户端模块) 系统组件(系统函数模块,profile文件处理模块) 帮助组件(授权模块,文件打包解包模块,网络组包解包模块,日志模块) 网络组件(压力测试模块) 标准组件(MQTT协议模块,NAT协议模块,代理协议模块,SDP协议模块,SIP协议模块,SNMP协议模块,SSDP协议模块) 流媒体组件(RTCP协议模块,RTP协议模块) 标准协议组件 电子邮件模块-删除 网络组件 网络客户端模块-增加 增加了HTTP客户端请求函数,HTTP请求函数请使用此函数相关 HTTP客户端管理函数组,继承自网络函数的HTTP管理类 HTTP客户端CHUNKED回调现在有客户端句柄参数了 增加了电子邮件功能函数组,从电子邮件模块重写 电子邮件类现在POP3和STMP全部都集成到一组函数了 电子邮件类现在回调函数发送不在需要了 网络函数模块 HTTP请求全部设置为过期函数,将在未来删除,请使用客户端模块下的HTTP请求 网络函数删除了获取外网IP地址的功能,不在需要 帮助组件 日志模块 增加了强日志写入功能 修改了日志类名称,解决类名不一致的问题 修改了日志路径大小为标准常量了 删除了错误的释义 删除了日志级别设置冗余的代码 核心组件 核心服务模块 套接字TCPXCore修正超过连接数关闭处理不正确的问题 基础组件 基础模块 字符串类获取路径类型现在不是正确的路径返回假并且第二个参数可以为NULL了 字符串类获取路径类型对绝对路径进行了规范性验证了 算法模块 计算类重置函数修改,现在可以支持重置流量和次数信息 计算类错误信息进行了统一修改,简化错误 计算类增加被动回调模式的值触发器,可以通过此函数来设置平均值触发后回调通知了 ====================================================================================== XEngine-V7.46.0.1001 Build20221228 其他更新 安装脚本现在支持ROCKYLINUX了 安装脚本修正Centos无法正确安装rb_libtorrent库的问题 安装脚本删除MACOS下安装xcode的功能,需要用户自己安装 安装脚本现在对MACOS的BREW命令会判断是否安装了 应用程序现在不在依赖任何模块了 平台更新 ANDROID改造已经支持以下组件模块 基础组件(基础模块,算法模块) 核心组件(池管理模块,核心服务模块,协议模块,核心函数模块,黑白名单模块) 客户端组件(客户端模块) 系统组件(系统函数模块,profile文件处理模块) 帮助组件(授权模块,文件打包解包模块,网络组包解包模块,日志模块) 网络组件(压力测试模块) 标准组件(MQTT协议模块,NAT协议模块,代理协议模块,SDP协议模块,SIP协议模块,SNMP协议模块,SSDP协议模块) 流媒体组件(RTCP协议模块,RTP协议模块) MACOS平台编译修正一处警告问题 客户端组件 客户端模块 SCTP客户端已经被移除.兼容性不好 标准协议组件 UPNP协议模块-删除 SSDP协议模块-增加 协议打包增加了设备搜索请求协议,支持ST和USERAGENT以及IP版本设置 协议打包增加了设备搜索回复协议,支持ST和USN和LOCATION URL以及版本和时间设置 协议打包增加了通知协议,支持NT,USN,LOCATION URL,超时时间和IP版本设置 协议打包增加了离开协议,支持USN和IP版本设置 协议解析增加了解析SSDP协议数据为数据结构体的功能函数,支持导出头字段 协议解析增加了获取指定头字段对应指定内容值的功能函数 协议帮助增加了UPNP打包协议支持,支持打包UPNP操作协议(IP地址,获取映射,添加映射,删除映射) 核心组件 核心服务模块 多播通信组播和广播现在套接字重用使用已有代码了 套接字组播通信增加了新的组播使用网卡方法 SCTP服务已经被移除,因为只有LINUX支持,兼容性不好,以后有机会添加 基础组件 基础模块 句柄生成类现在不在使用guid库了,使用新的标准库方式生成GUID ====================================================================================== XEngine-V7.45.0.1001 Build20221219 其他更新 协议头删除了不需要的P2P定义 协议头日志协议不在提供后续大小,并且增加了日志文件字段 协议头设备类型扩展了PC为WINDOWS,LINUX,UNIX,MACOS 音视频编解码组件 音视频帮助模块 解析类H264NAL头类型解析现在支持导出起始码大小了 修正帧信息数据结构释义不正确的问题 系统组件 系统函数模块 删除了SPI类相关功能代码 删除了皮肤界面类相关功能代码 帮助组件 日志模块 备份函数按照时间的日志存放现在不在写入编号了 网络日志现在不打包协议头了,只提供日志信息结构了,更加方便用户 网络日志导出的队列缓冲区只包含日志本身不在包含日志信息了,日志信息单独参数导出 核心组件 核心服务模块 套接字广播通信不在区分发送和接收端了 套接字广播通信现在可以直接获取对应信息而不是通过函数获取了 套接字广播通信现在关闭函数不需要错误处理了 套接字组播通信不在区分发送和接收端了 套接字组播通信修正发送没有对网卡进行绑定导致的问题 套接字组播通信现在关闭函数不需要错误处理了 基础组件 基础模块 字符串分割文件名函数现在相对路径也能处理驱动盘符了 字符串分割文件名函数修正没有后缀名导致的取后缀错误问题 ====================================================================================== XEngine-V7.44.0.1001 Build20221114 应用程序 xengine删除了组件列举功能 xengine现在支持显示所有网站信息了 帮助组件 组包模块 包处理获取数据拷贝优化.现在直接赋值而不是拷贝赋值了 音视频编解码组件 音视频帮助模块 解析类修正帧解析器释放没有释放元素的问题 流媒体组件 RTP协议模块 打包类修改原始数据打包流程,现在大大优化处理速度 打包类删除了内部队列,不在使用send和recv,直接使用packet即可 打包类删除了h264,h265,aac的帧解析代码,现在必须一帧一帧投递了 打包类删除了内部临时缓冲区代码,不在需要 标准组件 HTTP服务模块 HTTP2服务模块修改客户端锁的使用,解决某些冲突问题 HTTP1服务模块修正锁使用不当某些时候会崩溃问题 HTTP1,2获取数据拷贝优化.现在直接赋值而不是拷贝赋值了 HTTP1,2现在统一了返回的版本字符串为XEngine版本了 HTTP帮助类增加生成URL短连接的函数功能 HTTP帮助类重新设计了错误码定义 WebSocket模块 获取数据拷贝优化.现在直接赋值而不是拷贝赋值了 MQTT协议模块 属性字段进行了修改,现在每个值类型有单独的字段了 连接头修正QOS占位标记大小不正确导致的问题 打包类连接函数现在支持打包用户名和密码了 打包类属性打包函数不在导出,现在通过函数直接传递即可 打包类属性修正长度不正确的问题 打包类修正长度处理函数没有导出长度大小的问题 打包类修正请求的函数在处理移动指针大小不正确导致的问题 打包类属性现在支持更多类型的数据打包了 解析类增加获取协议头是否完整的函数 解析类现在支持解析用户名和密码了 解析类长度解析现在支持安全性处理了 解析类现在支持更多协议类型解析了 解析类公用回复函数现在支持消息ID为0了 解析类修正处理指针位置不正确导致解析失败的问题 网络帮助组件 网络帮助模块 域名类获取域名信息增加导出完整的域名地址字段 基础组件 基础模块 IP地址类IPV4判断修正某些时候传递长度问题导致崩溃的问题 句柄类创建随机字符串函数现在不使用时间作为种子了,时间段生成一致问题 ====================================================================================== XEngine-V7.43.0.1001 Build20221104 流媒体组件 流媒体客户端模块 编码推流初始化修正协议类型参数不生效的问题 编码推流增加写入媒体尾的函数 编码推流增加重新打开新媒体文件的函数 拉流类现在返回的数据包含PTS,DTS,DUR信息了 修正没有销毁库资源的问题 删除了没有使用的回调函数 HLS协议模块 分片类扩大内部缓冲区大小,解决高分辨率下的问题 分片类现在音频和视频启用需要手动设置了 分片类现在取消了输入数据回调,通过内部队列push函数投递 修正没有销毁库资源的问题 客户端组件 网络客户端模块 TCP套接字发送和接受函数现在不在内部做可读写,需要用户自己调用 UDP套接字发送函数不在进行可写判断,因为没有意义 UDP套接字接受函数删除了可读判断,需要用户自己调用 网络组件 压力测试模块 现在测试回调函数扩展了连接,发送,接受失败次数参数字段 现在数据测试结构体信息支持超时设置和发送接受数据大小设置了 TCP连接测试修正失败连接测试时间过长的问题 TCP连接测试客户端索引不在生效 TCP数据测试现在支持自定义内存大小了 TCP数据测试现在支持验证接受数据是否正确 UDP数据测试现在支持自定义内存大小了 UDP数据测试现在支持验证接受数据是否正确 帮助组件 日志模块 现在初始化会判断日志目录是否存在,不存在会创建了 标准组件 邮件客户端模块 修改句柄管理功能,现在使用新的方式解决锁冲突,优化性能 HTTP服务模块 删除了头文件中不需要的CGI和小程序数据结构代码 MQTT协议模块-增加 支持操作类型定义,操作控制标识符,属性定义,结果值定义 支持协议头,连接协议,订阅协议解析和打包 支持可变长度编解码 打包类支持连接请求和回复,订阅请求和回复,发布请求和回复,取消订阅请求和回复,断开连接和属性以及通用协议打包 解析类支持连接请求和回复,订阅请求和回复,发布请求和回复,取消订阅请求和回复,断开连接和属性协议解析 基础组件 算法模块 计算类修正被0除的问题 ====================================================================================== XEngine-V7.42.0.1001 Build20221021 编解码组件 采集器模块 音视频采集现在句柄方式进行了修改,使用了新方式 播放器模块 修改句柄管理功能,现在使用新的方式解决锁冲突,优化性能 音频播放删除内部线程,PUSH后会直接播放,因为不知PTS和DTS.播放速率交给调用者 视频播放删除了内部队列功能,只有一个模式了,因为不知PTS和DTS.播放速率交给调用者 媒体包模块 修改句柄管理功能,现在使用新的方式解决锁冲突,优化性能 网络组件 测试模块 修改了句柄管理器,解决了某些性能和锁的问题 TCP连接测试修正停止没有释放内存的问题 流媒体组件 流媒体客户端模块 文件推流修正服务退出后状态获取不正确的问题 文件推流优化了数据读取回调函数代码 文件推流销毁函数修正某些时候崩溃的问题 拉流类修正销毁某些时候崩溃的问题 拉流类启动函数现在允许没有设置回调了 拉流类初始化获取的流修改默认为启用 编码推流现在允许不在初始化中写入PPS,SPS信息而是在写入头信息的时候写SPS等信息了 HLS协议模块 分片类句柄管理已经被重写,解决了某些性能和锁的问题 分片类对输出函数和启动函数进行了代码调整 分片类修正分片后没有对文件进行写入媒体头和尾的问题 分片类修正音频分片结束错误的写入尾部问题 下载组件 下载模块 下载模块的句柄管理已经被重写,解决了某些性能和锁的问题 客户端组件 客户端模块 TCPSELECT扩展句柄方式进行了修改,使用了新方式 客户端回调函数句柄参数增加了套接字参数 核心组件 池管理模块 线程类无队列模式和分发模式句柄管理进行了重写,解决了某些性能和锁的问题 核心函数模块 删除了多余的定义 SNIFFER句柄管理进行了重新编写,解决了某些性能和锁的问题 SNIFFER的WRITEDUMP函数被删除,因为不兼容 SNIFFER修正没有正常关闭套接字导致的问题 ====================================================================================== XEngine-V7.41.1.1001 Build20221013 其他更新 编译脚本修改解决某些时候一些死锁问题 导出头文件修正导出类型不正确问题 ====================================================================================== XEngine-V7.41.0.1001 Build20221012 其他更新 XEngine_Types修改了一些不需要的定义 头文件的权限字段进行了修改 修正了关闭套接字常量定义问题 编解码组件 媒体帮助模块 解析器增加了媒体帧解析函数组.可以支持多种格式媒体进行分离帧 解析器解析NAL单元格式类型现在不需要起始码参数了 解析器删除了NAL单元头解析函数 解析器删除了IDV3解析函数,没有多大用处 流媒体组件 流媒体客户端模块 文件推流输入参数不在使用回调函数了现在使用数据压入 文件推流音视频启用现在需要初始化的时候设置了 编码推流删除了线程和延迟推流模式,现在必须一帧一帧推送了 编码推流删除了内部队列池,不在需要 编码推流推送函数增加了是否是关键帧的参数 拉流类修正关闭句柄导致的问题 拉流类增加主动获取编码数据的模式函数 现在使用句柄的返回方式进行了修改.解决某些冲突问题 现在不需要依赖AVHelp模块了 帮助组件 组包模块 缓存队列销毁的时候会触发一次事件了 标准组件 电子邮件模块 现在回调函数需要单独为客户端创建了 POP3修正回调函数自定义参数不生效的问题 核心组件 池管理器模块 内存池添加销毁回调句柄现在不使用结构体了 基础组件 基础模块 增加了环境变量操作,支持添加设置删除获取 算法模块 计算类修改了追溯的超时内存管理方法 计算类修改了锁的使用,现在各种类型锁已经分开处理了 ====================================================================================== XEngine-V7.40.0.1001 Build20220923 其他修改 统一基础库和核心库组件名称 应用程序 增加了应用程序,为了方便查阅一些信息 应用程序支持打印版本和组件列表 流媒体组件 流媒体客户端 编码推流修正音频推流的时候出错崩溃的问题 编码推流修正视频推流的时候流索引不正确的问题 编码推流修改音频推流的PTS计算方式.解决序列问题 编码推流优化视频解析速度 编码推流现在删除了非线程推流延迟功能 编解码组件 媒体包模块 媒体转换修正输出的时间信息不正确的问题 媒体连接器增加,支持连接多个文件,支持连接时间设置,支持 帮助组件 包管理器模块 缓存类优化取包代码,删除不需要的代码 删除了因为性能问题包管理器函数中的随机获取和列表获取函数 标准组件 HTTP服务模块 删除了因为性能问题包管理器函数中的随机获取和列表获取函数 WEBSOCKET模块 删除了因为性能问题包管理器函数中的随机获取和列表获取函数 网络组件 网络函数模块 HTTP请求POST方法修正申请内存失败没有返回错误的问题 HTTP请求POST方法修改传递负载数据大小的参数传递方式 HTTP请求POST和GET函数已经被被设置过期函数,请使用自定义请求函数 HTTP请求添加自定义请求函数 核心组件 安全模块 X加解密修改内部带密码加解密方式,解决某些时候密码错误还能解密的问题 X加解密修正数字判断加密不正确导致的问题 核心模块 心跳和多播类调整目录结构 基础组件 基础模块 句柄类创建句柄函数重新设计生成算法,现在生成的随机性更大了 句柄类创建随机字符串函数现在支持全字母或者全数字生成了 ====================================================================================== XEngine-V7.39.0.1001 Build20220819 其他更新 协议头删除了DDS协议修改了后台协议名称 协议头重新规范定义了部分类型值 协议头增加了某些类型的字符串值,方便使用 协议头增加了权限级别协议 帮助组件 包管理器模块 自定义包管理器大小条件设置最后参数现在支持位移与或操作了 缓存类新增加 支持自定义数据包缓存 支持事件 支持最大包 支持零拷贝内存 删除了多余的错误定义 授权模块 类型定义增加了某些类型的字符串值,方便使用 序列号生成函数完善了说明 网络组件 网络帮助模块 HTTP请求参数增加了POST负载大小字段,可以支持二进制POST了 标准组件 HTTP服务模块 帮助类获取URL的API格式修正名称和版本参数顺序问题 删除了执行程序相关代码 音视频组件 采集器模块 视频采集现在视频参数不能为NULL了 视频采集获取信息现在支持获取图像格式了 视频采集修正获取数据超时导致退出的问题 音频采集修正获取数据超时导致退出的问题 客户端组件 客户端模块 TCP和UDP类的recvpkt函数修正在有多余数据崩溃的问题 TCP和UDP类的recvpkt函数修正某些时候导出的负载长度不正确的问题 TCP和UDP类的recvpkt函数现在协议头参数可以为NULL了 核心组件 核心服务模块 删除了剪贴板通信代码,因为对跨平台支持太低 删除了高速缓存相关代码,使用率太低,不合符逾期 基础组件 基础模块 时间类解决inttostr函数不生效的问题 ====================================================================================== XEngine-V7.38.0.1001 Build20220715 其他更新 协议头的保留字段现在修改为无符号了 下载组件 BT下载模块 更新了MACOS下的函数使用方式,采用新版本解决警告问题 编解码组件 音频编解码模块 实时编解码修正退出的时候内存释放处理不正确的问题 流媒体组件 流媒体客户端 文件推流现在支持设置是否内部延迟还是手动延迟了 文件推流修正查找流超时导致流信息获取不全的问题 文件推流修正关闭推流器可能崩溃的问题 实时推流修正退出的时候内存释放处理不正确的问题 客户端组件 客户端模块 TCP扩展客户端连接超时不生效的问题 TCP扩展客户端回调函数现在有调用约定声明了 TCP扩展客户端修正阻塞模式设置不正确并且没有还原的问题 TCP扩展客户端现在只有连接成功状态才会进行线程中的recv处理了 TCP扩展客户端修正回调函数句柄不正确的问题 TCP扩展客户端心跳函数可以设置间隔时间了 TCP扩展客户端修正心跳的一个严重问题 TCP扩展客户端修正自动重连在linux下会自动断开的问题 TCP客户端现在支持指定网卡和端口了 UDP客户端绑定函数现在可以支持指定网卡地址了 核心组件 核心服务模块 内部加载头和类构造优化了代码 重新设计了创建器句柄设计,解决某些时候进程卡死的问题 无线网络类删除了红外相关文件代码,函数和定义 无线网络类删除了蓝牙相关文件代码,函数和定义 TCP扩展套接字服务已经被删除 套接字和UDPXcore修正macos下警告的问题 基础组件 基础模块 字符串类BaseLib_OperatorString_GetLastString函数已经被删除 字符串类增加BaseLib_OperatorString_GetPath获取路径类型功能 字符串类修正delchar函数删除不完整的问题 字符串类从开始和结束位置删除指定字符的函数现在支持设置删除模式了 信号量类修改内部代码,现在兼容性更好了 ====================================================================================== XEngine-V7.37.0.1001 Build20220701 全局更新 修改了WINDOWS的预编译判断宏 音视频编解码组件 采集模块 音视频采集现在区分了MAC和LINUX系统 音视频采集现在设备编号名需要用户手动指定了,支持自己选择采集设备 视频采集修正参数没有生效的问题 帮助模块 设备类获取音频设备修改现在支持MACOS了 流媒体组件 流媒体客户端 拉流端删除了多余的成员与getinfo函数 拉流端初始化函数进行了扩展,支持导出所有流信息列表了 拉流端初始化函数现在支持设置RTSP的传输方式是TCP还是UDP了 拉流端增加了转推流函数,现在支持把拉下来的流直接推送到服务器了 拉流端修正因为超时时间设置导致的问题 拉流端修正查找流信息失败导致的问题 客户端组件 客户端模块 UDP增加了CONNECT函数,不在集成到CREATE中,避免后续BIND失败的问题 TCP扩展类现在重连成功有回调提示了 标准组件 SNMP协议模块 解析类修正V1,2解析函数在新的变换协议中无法正确处理的问题 系统组件 系统函数模块 文件类保存缓冲区内容到文件函数合并了路径和文件名参数 硬件类获取磁盘个数MACOS系统名称进行优化 硬件类获取序列号函数MACOS单独处理,现在能处理磁盘和CPU序列号了 硬件类修正关闭命令读取通道不正确导致的问题 硬件类修正MACOS系统下CPU信息获取不正确的问题 系统类获取系统版本修正Linux和MACOS系统的一些问题 进程类修正获取进程信息判断返回值大小不正确导致的问题 进程类修正进程ID无法处理0为自身的情况 进程类修正获取MACOS内存不正确的问题 网络组件 压力测试模块 现在UDP和TCP套接字测试结构被单独出来了 测试回调函数现在只保留一个并且减少了导出的信息,不在有状态和时间 数据测试增加了套接字句柄字段 数据测试的负载数据字段需要由用户管理内存了 TCP和UDP数据结构调整,优化使用方式 TCP和UDP测试增加了获取是否还在运行的函数接口 TCP和UDP数据压力测试现在内部使用线程池来处理测试客户端了 TCP和UDP数据压力测试启动失败不在继续而是直接返回错误 TCP连接测试主要测试现在移动到线程中执行 TCP连接测试现在每个测试对应一个线程而不是一个客户端对应一个线程了 客户端组件 客户端模块 修正MACOS编译连接基础库路径不正确导致的问题 ====================================================================================== XEngine-V7.36.0.1001 Build20220617 网络组件 压力测试模块 删除了ARP和DDOS测试代码,不在启用 修正UDP套接字测试接口没有导出的问题 系统组件 系统函数模块 系统类修正MACOS下获取CPU占用率不正确的问题 文件类修改枚举文件使用,解决无法使用通配符的问题 客户端组件 客户端模块 套接字TCP和UDP的recvpkt函数修正超时时间不生效的问题 帮助组件 授权模块 本地授权增加了验证类型是本地还是网络的字段 本地授权增加了启动时间字段,用于分钟和天数 本地授权获取过期函数现在能够正确处理CDKEY的状态了 本地授权修正自定义时间分秒设置不生效导致的问题 本地授权现在分钟和天数能够正确计算使用时间了 本地授权获取过期时间现在只需要一个参数导出内容了 核心组件 核心服务模块 TCPXCore修正Macos没有赋值类指针导致的问题 TCPXCore修正Macos套接字句柄传递错误导致的问题 TCPXCore修正Macos事件集合处理不正确导致的问题 UDPXCore修正Macos没有赋值类指针导致的问题 UDPXCore修正Macos套接字句柄传递错误导致的问题 UDPXCore修正Macos事件集合处理不正确导致的问题 池管理模块 内存池修正因为内存对其问题造成的问题 网络函数模块 套接字类获取端口状态代码优化,现在更加兼容了 流量控制类现在增加了对MACOS的支持 网络流量类现在支持MACOS了 网络嗅探类在MACOS系统中使用系统的协议头文件了 网络协议模块 原始套接字在MACOS系统使用系统的协议头文件定义了 基础组件 基础模块 版本类获取版本字符串现在返回值也是字符串类型了 字符串类路径修正函数修正LINUX下面不生效的问题 ====================================================================================== XEngine-V7.35.0.1001 Build20220602 其他更新 安装脚本完善了对MACOS系统的支持 更新了依赖的开源库的版本 编译更新 音视频组件所有模块已经支持MACOS系统 流媒体组件所有模块已经支持MACOS系统 标准组件所有模块已经支持MACOS系统 核心组件所有模块已经支持MACOS系统 网络组件测试模块已经支持MACOS系统 标准组件 HTTP服务模块 配置类类型头修正可能参数设置不正确的问题 Websocket模块 帧数据大小成员现在为64位了 修正大数据包网络字节序转换在linux和macos下转换不正确的问题 帮助组件 授权模块 本地授权添加支持设置过期版本与日期 本地授权添加读写记录操作时间的功能函数 本地授权删除读写CDKEY多余的文件操作 本地授权获取超时时间参数进行了顺序调整 本地授权增加了执行次数的字段 本地授权修正构建时间函数对时间操作不正确导致的问题 本地授权修正注册时间写入不正确的问题 音视频组件 帮助模块 修正LINUX和MACOS下没有连接基础库的问题 流媒体组件 流媒体客户模块 修正LINUX和MACOS下没有连接到AVHelp模块的问题 核心组件 核心服务模块 UDPXCore增加了对MACOS的KQUEUE支持 TCPXCore增加了对MACOS的KQUEUE支持 TCPXCore修改接受连接处理函数参数,现在传入绑定结构而不是句柄了 TCPPOLL删除了关闭线程功能 TCPPOLL线程管理句柄改为线程ID了 基础组件 基础模块 版本号类新增,支持获取XEngine的版本,支持据结构,字符串,数值三种类型 ====================================================================================== XEngine-V7.34.0.1001 Build20220527 其他更新 删除了流媒体协议定义,移步到流媒体服务中了 编译更新 对MAKEFILE进行了改造,现在支持MACOS和LINUX了 基础组件所有模块已经支持MACOS系统 客户组件所有模块已经支持MACOS系统 下载组件所有模块已经支持MACOS系统 帮助组件所有模块已经支持MACOS系统 系统组件所有模块已经支持MACOS系统 网络组件的网络函数模块已经支持MACOS系统 核心组件池管理模块,安全核心模块,黑白名单模块已经支持MACOS系统 图像组件 已经被删除,单独开源 帮助组件 压缩模块 内存压缩修正压缩级别参数处理不正确的问题 客户端组件 客户端模块 TCP扩展客户端现在支持设置自动重连了 TCP扩展客户端现在心跳不在负载心跳负载数据包了 TCP扩展客户端管理器不在申请单独的内存了 TCP扩展客户端现在重连句柄不会改变了 系统组件 系统函数模块 进程类优化级处理函数修正参数范围判断不正确的问题 进程类获取CPU资源和获取进程启动时间以及获取进程信息函数增加对MACOS系统的处理 硬件类获取磁盘个数和获取CPU信息函数增加对MACOS系统的处理 系统类获取内存信息和获取进程个数和关闭系统函数增加对MACOS系统的处理 网络组件 网络函数模块 网络类字节序转换现在支持MAC系统了 下载组件 下载模块 FTP类下载修正结果处理不正确导致的问题 ====================================================================================== XEngine-V7.33.0.1001 Build20220422 其他更新 现在WINDOWS三方库将保证更新效率了 删除了多余的libiconv三方库 升级了OPENSSL版本库到3.0.2 导出的头文件定义使用的字符串不在使用_T了 图像组件 图像识别模块(增加) 图像识别帮助类,支持QR文件和摄像头识别 图像信息模块(增加) 图像信息写入目标文件默认支持格式修改 图像信息设置增加分辨率修改 图像信息设置增加图像旋转支持 图像信息设置增加色彩空间转换 图像信息设置增加亮度调节 图像信息设置增加通道分离与合并 图像信息设置增加内存修改分辨率 图像信息获取增加获取图像基础和扩展信息 标准组件 HTTP服务模块 HTTP2增加升级协议解析函数,可以解析升级协议和HTTP2请求协议 HTTP2增加了DATA数据打包函数,现在单独打包发送数据了 HTTP2增加了获取和设置自定义客户端数据的功能函数 HTTP2修改获取包最后的4个参数可以为NULL了 HTTP2修改解析GOAWAY现在不在帮助处理后续包了,而是直接导出整个负载包 HTTP2修改对于第一个包的处理进行了优化,避免重复包 HTTP2修改获取流列表的总数字段改为包总数 HTTP2修改解析HEADER的时候会自动填充HTTP请求头了 HTTP2修改HPACK导出结构,现在只需要名称和值了,不需要在由用户处理哈夫曼编解码了 HTTP2修改现在SETTTING包会触发一次请求了 HTTP2修正关闭客户端与销毁的时候内存处理不正确导致的问题 HTTP2修正打包协议类型错误导致的问题 HTTP2修正数据包获取大小不正确导致的问题 HTTP2修正HPACK解析与打包问题,现在使用新的模式处理HPACK HTTP2修正获取包如果是空队列会导致崩溃的问题 HTTP2修正服务销毁可能崩溃的问题 HTTP2删除了第一包处理代码.不在需要 HTTP2删除了获取和设置状态的函数 HTTP配置类删除了HPACK配置,不在需要 HTTP帮助增加转换HTTP2头到HTTP参数结构的函数 WEBSOCKET模块 帧编码器现在允许填充NULL的负载了,用于协议处理 包处理器的初始化函数调整参数顺序 网络组件 网络函数模块 HTTP的GET和POST现在HTTP2为直接请求,而不需要升级了 核心组件 核心安全模块 修改代码兼容3.0版本的openssl 核心池管理模块 线程池无队列模式启动对于内存描述更加清楚 线程池无队列模式现在销毁的时候会正确销毁内存了 基础组件 基础模块 字符串类删除了字符集转换功能函数,现在单独出来了 字符串类修正路径函数支持绝对路径转相对路径的时候处理盘符路径了 字符串类修正路径函数转换路径只有在类型0的时候才处理路径错误了 算法模块 数学类删除了提取字符串的整数值函数 字符串类增加了重新设计的提取字符串类数值函数 ====================================================================================== XEngine-V7.32.0.1001 Build20220408 其他更新 更新了最新依赖的三方库版本到最新 完善模块内错误定义规划 音视频组件 特效模块被删除,以后有机会在列计划 帮助组件 日志模块 修正日志全部输出宏信息定义不正确的问题 授权模块 本地验证修正过期日期和自定义信息不能为空的问题 标准组件 HTTP服务模块 HTTP2增加获取和设置连接状态函数 HTTP2增加打包升级协议函数 HTTP2打包SETTTING函数现在可以支持设置HDR大小了 HTTP2打包的协议函数修正TYPE和LEN字节序不正确导致的问题 HTTP2获取客户端数据修正没有头协议字段崩溃问题 网络组件 网络函数模块 HTTP请求现在支持HTTP2了,并且支持多路复用 HTTP请求支持设置SSL证书访问了 HTTP请求通过IP访问SSL地址了 HTTP请求的GET和POST方法增加了APIHELP_HTTPPARAMENT结构,用作HTTP参数设置 HTTP请求多对象操作增加了APIHelp_HttpRequest_SetParam函数用作设置HTTP参数 HTTP请求删除了APIHelp_HttpRequest_SetGlobalTime函数 HTTP请求的多对象操作删除了SetUser SetTime SetProxy函数,集中到SetParam中了 核心组件 核心函数模块 套接字获取网卡列表函数增加参数支持设置获取的IP版本了 池管理模块 线程池内部代码文件命名重新规范 线程池无队列模式修正销毁的时候可能的崩溃问题 线程池拆分派发模式和竞争模式代码,单独的文件管理 线程池竞争模式简化代码,优化内部锁使用 线程池竞争模式使用标准线程管理函数,删除了线程CPU绑定功能 线程池派发模式修改了内部锁的使用以及删除了类锁改为标准锁 线程池派发模式删除了自动优化功能与内部优化线程 线程池派发模式删除了CPU绑定功能 线程池派发模式设置线程数量函数进行了修改,不在导出参数 线程池派发模式查找最小队列方式修改,不在使用快排 基础组件 基础模块 IP地址操作分割IP和端口函数现在参数二有默认参数了 ====================================================================================== XEngine-V7.31.0.1001 Build20220324 其他更新 协议头删除了媒体控制流协议 客户端组件 客户端模块 UDX类修正在某些时候退出会崩溃的问题 流媒体组件 删除了X流媒体客户端模块,将被集成到流媒体服务开源发布 标准客户端模块 编码推流压入音视频数据现在会判断缓冲区状态是否满了 帮助组件 网络函数模块 HTTP请求修改POST和GET方法的验证参数,现在只需要一个参数就可以设置了 HTTP请求修改POST和GET方法参数,现在可以使用代理了 HTTP请求并发模式增加设置代理的函数 组包模块 标准打包和扩展打包类调整了初始化的参数二和三的顺序 标注组件 NAT协议模块 TURN支持创建转发绑定的IP和端口了 TURN支持通过原始地址和目标地址来获取对应绑定的地址 TURN支持通过原始地址和目标地址来关闭他们对应的资源 基础组件 基础模块 时间操作删除了BaseLib_OperatorTime_FormatSQL函数 时间操作删除了阳历转阴历函数,不方便维护 时间操作修改字符串与时间结构转换的函数名称 时间操作修改函数展示方式,更加方便观看了 时间操作增加了时间结构转字符串的函数 时间操作增加了整数转字符串的函数 内存操作删除了模块管理器,现在统一使用C模式了 ====================================================================================== XEngine-V7.30.0.1001 Build20220311 音视频组件 采集器模块 增加视频采集器,支持摄像头和屏幕采集 删除了摄像头和屏幕采集器功能类 媒体帮助模块 解析器H264头分析函数参数为NULL可以不用解析此参数就返回了 解析器H264头分析的长度现在可以为NULL了 解析器H264头分析现在可以导出解析到的位置了 流媒体组件 标准客户端模块 裸码推流现在会对音频进行重采样了,解决采集的格式不支持的问题 裸码推流修正延迟参数不起作用的问题 裸码推流修正流索引不正确导致的问题 裸码推流修正初始化音频流使用了错误的成员结构的问题 编码推流删除了自动处理SPS,PPS的功能,需要用户填充了 编码推流修正检测NALU单元不正确导致的问题 编码推流修正索引计算不正确的问题 编码推流视频优化获取输出时间戳的值 编码推流优化推流的时间戳处理代码 编码推流优化写流后的处理代码 文件推流优化了流索引处理代码 文件推流优化了内部线程推流的代码 标准组件 HTTP服务模块 帮助类获取参数列表的最后一个参数现在不会导出/符号了 配置类修正初始化MINI文件类型没有字符编码参数的问题 帮助组件 网络函数模块 网络类删除了获取IP地址信息的函数功能 基础组件 基础模块 IP地址类增加了判断输入的IP地址版本的函数 IP地址类增加了是否为IPV6地址类型的解析函数 IP地址类增加了获取IPV6地址类型的功能函数 IP地址类增加了扩展和压缩IPV6地址的函数 IP地址类是否为IPV4和IPV6函数现在支持通配符了 IP地址类是否为局域网函数修改为获取IPV4地址类型的功能,现在可以获取更多信息 IP地址类修改了IP地址类型枚举定义,现在区分IPV4和IPV6了 IP地址类因为作用不大或者功能冲突,删除了下面的函数 BaseLib_OperatorIPAddr_AddrStruct BaseLib_OperatorIPAddr_IPAddrToString BaseLib_OperatorIPAddr_StringToIPAddr BaseLib_OperatorIPAddr_MacAddrToString ====================================================================================== XEngine-V7.29.0.1001 Build20220225 其他更新 升级WINDOWS编译器为VS2022版本 依赖的所有开源库更新到最新版本 现在不在需要_WINDOWS宏的导出定义了 现在所有代码格式都修改为utf8-bom 现在WINDOWS编译的模块采用动态连接到运行时库了 协议头的负载类型进行了扩展 帮助组件 验证模块 本地验证修正读取CDKEY失败没有正确提示的问题 二进制打包模块 现在不在支持内部加解密与数据打乱了 现在不在支持自定义头数据了 现在获取信息使用参数方式获取,并且现在支持更多信息 打包类现在需要单独的函数进行打包 打包类现在支持自定义数据的后续负载类型和加解密类型 解包类增加获取当前节点加解密类型和负载类型 下载组件 BT下载模块 修改代码,现在支持libtorrent2版本了 创建器获取种子现在不在支持BTMAERKLE类型了,而是输出到内存 音视频编解码组件 打包模块 打包类修正打包关闭后无法操作文件的问题 流媒体组件 标准客户端模块 拉流类修正音视频数据不正确的问题 拉流类音视频数据现在都包含扩展信息了,如SPS,PPS 拉流类音频信息增加了采样格式,采样大小 拉流类视频信息现在有视频帧率信息了 拉流类增加单独的启动和暂停函数,现在可以对流进行暂停和继续了 拉流类现在支持拉流超时设置了 拉流类重新设计了导出的回调函数,不在封装成媒体,区分音频和视频包以及时间了 网络组件 网络帮助模块 网络类增加了IP地址信息获取功能,为在线版本 网络类IP地址获取支持IPV6和IPV4版本 网络类IP地址获取扩展了获取的信息内容 核心组件 核心函数模块 删除了IP地址信息获取相关功能代码,参考网络帮助模块中的函数 ====================================================================================== XEngine-V7.28.0.1001 Build20220121 其他更新 不在使用uint64_t,替换成__int64u 客户端组件 客户端安全模块 删除了WINDOWS的VPN客户端代码,不在启用 系统组件 系统函数模块 硬件类修改主板序列号名称 硬件类序列号获取方式修改,优化速度 硬件类序列号删除了BIOS序列号,增加了系统序列号字段 硬件类序列号函数修正LINUX下无法正常获取主板序列号的问题 硬件类序列号修改LINUX下CPU获取方式 网络组件 网络函数模块 网络类删除了APIHelp_NetWork_GetIPAddr函数,移动到核心函数中 网络类增加了获取网络地址函数.修正了以往函数无法获取外网IP的问题 HTTP类现在默认超时不在设置了 帮助组件 日志模块 打印函数增加了文件名称输出参数 打印函数的文件,函数名和行数使用了新的封装方式,解决文件名输出前缀不正确的问题 验证模块 扩展了硬件吗缓冲区大小,支持存储更多硬件信息了 流媒体组件 流媒体客户端模块 文件推流修正处理视频文件输入崩溃的问题 原始数据推流修正启用标志不正确的问题 原始数据推流修正关闭崩溃问题 原始数据推流现在音视频推送会在头中包含SPS和PPS了.解决部分问题 修改获取错误码名称,解决与客户端模块函数名冲突 标准组件 HTTP服务模块 配置类修正初始化CODE参数二不生效导致的问题 配置类支持MINI设置字符集了 帮助类增加了获取分割URL参数的函数功能 帮助类删除了微服务程序代码,移动到新的位置 帮助类删除了CGI执行工具,使用执行工具代替 增加了微服务程序代码,从帮助类而来 微服务现在支持模块(dll,so)执行程序 微服务现在不在使用HTTP头,而是用URL中的路径来判断是否为微服务处理程序 微服务现在能够自动处理注册的程序了 微服务支持HTTP头参数传递 微服务现在支持只返回HTTP状态码了 微服务解决参数传递失败造成的问题 核心组件 核心函数模块 套接字类修正获取连接类型没有正确处理错误的问题 套接字类增加了网卡信息获取函数.支持获取网卡类型,删除子网地址,支持IPV4和IPV6 套接字类获取连接类型修正在LINUX下崩溃问题 套接字类删除NetXApi_Socket_GetNetParam函数,与网卡信息获取函数重复 基础组件 基础模块 字符串类增加BaseLib_OperatorString_DelFirstForChar用来删除第一次出现的字符后的数据 字符串类增加BaseLib_OperatorString_DelChar删除字符串所有指定字符的函数 ====================================================================================== XEngine2021-V7.27.0.1001 Build1231 客户端组件 客户端模块 UDP现在不在对客户端进行管理,删除了相应代码 UDP删除了获取流量函数 UDP扩展接受发送函数,现在可以指定IP版本了 标准组件 邮件客户端模块 SMTP修正无法发送多个地址的问题 代理协议模块 Tunnel服务端修正在处理验证协议内存溢出导致的问题 Tunnel客户端修正自定义UserAgent不生效的问题 SOCKS服务修正解析用户函数获取验证类型不正确的问题 SOCKS服务修正获取用户名长度不正确的问题 网络组件 网络帮助模块 域名类获取主域名修正内存溢出导致的问题 系统组件 系统文件模块 硬件类获取磁盘列表修正获取到多余信息的问题 硬件类获取磁盘列表现在导出函数采用三级指针了 硬件类获取CPU名称删除了末尾的换行符字符 进程类删除了进程内存信息转换帮助函数,不在需要 系统类增加了获取系统启动时间和空闲时间的函数 系统函数模块 硬件类获取磁盘列表修改参数导出方式,现在导出三级指针 进程类获取进程信息修改参数导出顺序,并且支持默认自身进程信息参数了 进程类获取进程信息修正导出的进程内存信息为0的问题 进程类获取CPU使用率修正WINDOWS下进程ID指定错误的问题 进程类获取进程启动时间修正获取到的时间不正确的问题 核心组件 核心服务模块 TCPXCore现在关闭客户端资源函数分为关闭资源和释放资源了 TCPXCore的WINDOWS关闭函数现在不是取消IOCP事件而是投递关闭事件了 TCPXCore接受数据处理函数不在关闭客户端而是在函数外部处理 核心安全模块 帮助类BASE64解码修正函数对于BASIC前缀的支持 帮助类BASE64编码支持设置是否增加算法类型的参数 ====================================================================================== XEngine2021-V7.26.0.1001 Build1210 其他更新 修正在某些系统下大小文件导致的编译问题 删除了存储和验证多余的协议定义 客户端组件 客户端模块 TCP和UDP获取完整包函数优化内部缓冲区,解决没有结束符的问题 TCP客户端现在创建函数支持设置连接超时了 UDP客户端发送数据如果地址有值端口没有值将默认为IP:PROT 套接字操作修正LINUX下阻塞和非阻塞设置不正确的问题 帮助组件 组包模块 标准,扩展,自定义组包优化触发包逻辑,减少组包完毕后的多余步骤 标准组包现在在构建完整包的时候优化了性能 扩展组包在组包数据和尾包的时候优化性能 扩展组包修正没有初始化Chunked变量导致的问题 自定义组包优化组包头的性能 标准组件 HTTP模块 服务类优化组包头和优化构建完整包函数 websocket模块 组包类优化组包头并且修改组包完毕后的多余步骤 现在只能只用扩展组包函数,删除了老旧的函数 NAT客户端模块 STUN从RFC3489升级到RFC5389.不在对3489进行支持 STUN现在支持处理方法和类型 STUN解析器增加对错误,地址(XOR计算),未知属性的支持 STUN打包器增加对传输类型,过期时间,地址,保留端口的支持 代理协议模块 代理协议模块被重构,并且重命名为RfcComponents_ProxyProtocol SOCKS服务现在不在拥有网络服务,需要用户自己启用 SOCKS服务现在支持自己解析验证,登录,连接协议了 SOCKS服务支持设置和获取自定义内容 SOCKS服务现在支持解析IP和域名 SOCKS客户协议解析打包增加到此处 隧道代理服务现在不在拥有网络服务,需要用户自己启用 隧道代理现在支持解析包以及打包 隧道代理支持设置和获取自定义内容 隧道代理增加客户端打包函数 核心组件 核心协议模块 SOCKS代理协议相关代码被删除,移动到代理协议模块中 核心服务模块 TCPXCORE关闭客户端现在会处理是否存在的错误了 TCPXCORE修改线程函数处理客户端离开的回调事件,只有正确关闭才会有离开事件了 SCTP完整对其的标准化改造并且集成到代码编辑器中 基础组件 基础模块 字符串增加了BaseLib_OperatorString_GetKeyValue函数,用于分割获取字符串 字符串删除了GetWithChar,FromStrGetKeyValue和FromCharGetKeyValue函数,因为是多余重复的函数 字符串删除了BaseLib_OperatorString_DelChar 使用BaseLib_OperatorString_DelSub即可 时间计时器内部时间函数现在全部替换为C++标准而不是系统库函数 ====================================================================================== XEngine2021-V7.25.0.1001 Build1126 客户端组件 客户端模块 TCP和UDP获取完整包没有后续数据现在不会在申请内存了 流媒体组件 流媒体客户端 编码推流现在H264解析使用编解码帮助模块里面的解析函数了 编码推流删除了获取NAL类型的函数 音视频编解码组件 音视频帮助模块 增加了解析器类和打包类 移动AAC头函数到打包类中 移动H264,H265,AAC,MP3头解析函数到解析器中 解析器增加NALU解析函数,支持H264和265解析 解析器增加获取NALU单元类型的函数 解析器H264和H265解析头函数内部实现被重新设计 标准组件 HTTP模块 服务类修正发送打包数据错误无法正常返回的问题 服务类优化在构建组包时候的性能 配置类修改PACK,CODE,MINI初始化方式,解决换行字符模式导致的问题 WEBSOCKET模块 组包类优化在构建组包时候的性能 帮助组件 数据库模块 删除了SQL SERVER相关数据库操作支持 SQLITE修正没有加锁导致的一些问题 授权模块 增加新的硬件授权类型BIOS序列号 组包模块 自定义组包增加了设置条件的函数,可以支持一些非固定大小头组包 自定义组包PUSH可以进行动态的处理数据包大小字段了 自定义组包Get内存函数现在增加了导出头大小的字段 自定义组包删除了GET标注获取函数 标准组包,扩展组包,自定义组包优化在构建组包时候的性能 核心组件 网络函数模块 套接字获取连接类型修改WINDOWS平台的获取方式和内容 套接字增加了获取套接字句柄的远端和本地地址的函数 基础组件 基础模块 字符串类BaseLib_OperatorString_GetWithChar函数现在可以设置跳过空格了 配置文件读写被重构了.现在使用内存解析而不是文件解析 配置文件类删除了一个内部函数.使用其他函数替换 配置文件类增加了读写内存函数的功能 配置文件类文件读写配置现在内部调用内存读写函数 删除了BaseLib_OperatorFile_ReadProfileToInt函数支持 算法模块 数学类获取整数符号位现在支持导出数组个数了 ====================================================================================== XEngine2021-V7.24.0.1001 Build1105 其他更新 协议头 增加函数声明周期管理宏定义,删除了没有使用的宏定义 公用头 删除了不需要的公用类型定义 合并了一些类型定义 开源库 更新FFMPEG库应用地址 客户端组件 客户端模块 UDP和TCP的SELECT增加了一个获取完整包的函数 SSL客户端模块 SSL现在支持设置是由系统直接收发数据还是由用户确定了 SSL现在支持使用证书链证书 SSL修改了错误信息名称定义 SSL修改扩展函数内部实现方式 SSL增加了Send和Recv两个函数,直接获取数据的内存地址,而不需要开辟新内存了 帮助组件 组包模块 CHUNKED回调函数扩展了一个参数,支持标准和扩展组包CHUNKED回调了 扩展的标注组包,扩展组包,自定义组包修正对句柄参数没有正确判断导致的问题 标准组包,扩展组包,自定义组包现在获取数据如果没有后续数据导出的长度会被设置为0了 标准组包修正CHUNK包如果只有30个字节的末尾包无法正确处理的问题 标准组包修正某些时候尾部协议头分段接受导致没有CHUNK结束的问题 扩展组包现在支持CHUNKED包处理了 授权验证模块 本地验证获取过期时间在无限制版本的时候不会返回错误了 标准组件 HTTP模块 HTTP和HTTP2扩展包管理器修正对句柄参数没有正确判断导致的问题 HTTP2修改内部流属性结构,现在能够正确处理优先级包了 HTTP2现在输出的流信息包含优先级了 HTTP2完善错误信息 HTTP2支持处理PUSH_PROMISE和GOAWAY包了 HTTP2现在支持打包PUSH,GOAWAY和PING包了 HTTP2现在获取客户端消息函数可以导出消息类型了 WEBSOCKET模块 扩展包管理器现在能够正确导出错误信息了 扩展包管理器修正对句柄参数没有正确判断导致的问题 标准包函数将被声明过期,未来会在某个版本移除 核心组件 安全模块 SSL服务现在支持不加载ROOT证书了 SSL服务现在支持加载证书链证书模式了 SSL服务现在可以设置客户端是否加载证书 SSL服务修正接受连接可能某些错误没有错误码导出的问题 SSL服务支持使用其他套接字而不是SSL套接字来发送和接受数据了 SSL服务修正异步套接字一直无法ACCEPT的问题 SSL服务修改接受连接函数,现在获得客户端证书信息参数可以为NULL SSL服务增加了获取客户端对应套接字的函数 SSL服务增加了扩展函数库,取消了标准函数导出,现在支持多服务管理了 SSL服务增加了Send和Recv两个函数直接获取数据的内存地址,而不需要开辟新内存了 ====================================================================================== XEngine2021-V7.23.0.1001 Build1022 其他更新 协议头 更新部分协议负载类型,统一协议名在最后了 开源库 更新所有开源库版本,现在统一了开源库版本安装方式 更新zlib和sqlite库名称统一命名 更新数据库MYSQL依赖的插件,现在集成到系统中,部分MYSQL8.0系统需要依赖这些插件 客户端组件 客户端池模块-已被删除,开源到例子中 帮助组件 组包模块 文件组包函数被删除 标注组包和扩展组包以及自定义组包的扩展函数提升性能,修改初始化处理方式 授权模块 本地验证现在生成的CDKEY不在填写注册时间了,只有在注册的时候才填写 本地验证修正时间信息不是标准时间结构导致解析失败的问题 序列号生成现在不在限制序列号段数了 序列号生成增加了生成自定义无类型模式的函数 标准组件 HTTP模块 HTTP2增加了打包SETTING,WINDOW,HEADER,DATA协议的函数 HTTP2现在客户端连接初始化完成会返回一个空包给上层客户端了 HTTP2现在客户端投递的HEADER会当成一个包给客户端了 HTTP2获取客户端数据现在必须获取HPACK的内容了 系统组件 系统函数模块 系统类删除了注册自重启函数功能 基础组件 基础模块 字符串删除了获取路径信息的函数,集成代码功能到GetFileAndPath ====================================================================================== XEngine2021-V7.22.0.1001 Build1009 其他更新 协议头删除了DDS相关定义内容 编解码组件 特效模块 增加特效模块,现在支持画面翻转 媒体包模块 媒体文件转换器和媒体文件封包器现在可以输出指定时间段封包了 媒体文件解封包现在可以针对单独的媒体文件进行提取指定时间段的数据了 标注组件 HTTP模块 HTTP2修正代码冲突导致的问题 HTTP2修正解析投递函数对于数据包指针移动不合理的问题 HTTP2修正内存没有释放导致的问题. HTTP2修正协议解析上面的一些问题 HTTP2修改打包函数处理模式 HTTP2修改投递处理现在连接字符串单独处理了 HTTP2现在支持解析HTTP HEADER头5种类型协议,暂时不支持HUFFMAN编解码 HTTP2增加扩展类函数,用于支持导出函数 HTTP2增加了获取任务池和获取数据函数 HTTP配置类增加读取HTTP2静态表信息的函数 HTTP配置类现在使用同一错误码了 HTTP现在只保留扩展服务类,标准服务类导出函数已经被删除 核心组件 核心函数模块 删除了对PCAP模块的支持 删除了枚举局域网的功能函数 SNIFFER重新实现了,现在只能获取IP层的数据包了 核心协议模块 原始套接字修正TCP,UDP没有初始化缓冲区导致协议错误的问题 原始套接字IP头修正IP标识符和分段标识符不正确的问题 原始套接字TCP修正标识符不正确导致的问题 基础组件 基础模块 删除了位字节操作的两个函数,没有多大意义 算法模块 数学库添加了通过内存范围的值转为数字的功能函数 ====================================================================================== XEngine2021-V7.21.0.1001 Build0918 全局更新 删除了QT相关项目管理文件,现在统一使用VS管理编写代码 公用头现在使用构建的编译器宏来判断是否启用某些特定类型而不是系统了 类型头文件删除了某些不在需要的特定宏定义,并且修改了启用的条件 帮助组件 日志模块 修正LINUX版本连接错误 增加了新的日志输出宏定义可以打印文件名加行数 插件组件 插件组件下面的模块已经开源发布,提供了单独的仓库 网络组件 删除了XRPC模块,已经开源并且会被集成到控制服务中了 删除了DDS模块,已经开源并且会被集成到消息队列服务中了 网络帮助模块 IP操作类被删除,集成到基础库的IP地址类中了 标准组件 HTTP服务模块 帮助类获取HTTPCode文件内容修改了解析模式,不在使用JSON了 服务类现在HTTPCode和MIME类型加载使用全局函数而不是成员函数了 服务类的事件管理器不在使用类模式,而是使用函数方式 HTTP2协议开始实现,内部开发中... HTTP2支持协议组包 HTTP2支持解析SETTING,WINDOW_UPDATE,DATA,RST_STREAM,PING协议类型格式数据 核心组件 核心服务模块 TCPXCore设置发送回调现在支持取消设置了 TCPXCore取消了PostMsg函数.现在都统一使用SendMsg了 TCPXCore的LINUX版本现在可以发送数据的时候会一直触发了 基础组件 基础模块 IP地址类增加BaseLib_OperatorIPAddr_IsIPV4Addr和BaseLib_OperatorIPAddr_IsLanAddr函数 字符串类的分割地址,解析地址IP地址转字符串,MAC转字符串函数变更到IP地址类中 字符串类删除了itot函数.没有多大作用,可以使用printf替代 时间类计时器修正创建函数错误的初始化成员问题,修正回调函数不起作用的问题 算法模块 计算类修正内部锁使用导致的崩溃问题 计算类修正创建函数错误初始化内部成员的问题 计算类删除获取限制和设置限制功能函数,没有多大意义 计算类修改了内部成员定义方式,现在统一使用64位int类型 计算类计算休眠时间函数优化内部计算方式,提高休眠精度 计算类计算休眠时间函数现在被集成到计算类中而不是单独的函数了 ====================================================================================== XEngine2021-V7.20.0.1001 Build0903 服务组件 删除了守护进程和服务进程两个程序代码,被集成到远程控制开源服务中了 帮助组件 日志模块 日志结构删除了多余的成员 流媒体组件 X客户端模块 编码推送替换了过期的初始化AVPACKET函数 编码推送修正推流线程可能的内存泄露问题 标准组件 SNMP协议模块 模块被重构,现在不在依赖NETSNMP了 模块内部只处理协议,不在处理网络了 解析类增加,现在支持解析SNMP协议GET和SET的一些基本协议 打包类增加,现在支持打包SNMP协议GET和SET协议 帮助类增加,支持OID编码和字符串互相转换 解析和打包类支持V3协议处理了,暂不支持V3验证加密模式 系统组件 系统函数模块 进程类修正创建进程LINUX下崩溃的问题 进程类修正创建和运行导出函数参数不完整的问题 进程类修正创建进程隐藏和显示设置不成功的问题 进程类获取进程信息现在支持输入进程名了,也可以判断进程是否存在了 进程类删除了进程是否存在的函数 系统文件模块 文件模块已经被加入VS项目管理中,方便代码管理 修改了模块名称为XEngine_ProcFile 修改了内部定义类型名称 进程类获取进程状态修正读取指定进程ID信息不成功的问题 核心组件 核心服务模块 TCPXCore修正WINDOWS投递数据失败导致的内存泄露问题 TCPXCore修正WINDOWS跳出设置不会被触发回调导致的问题 TCPXCore修正WINDOWS发送回调函数触发不成功的问题 TCPXCore删除了发送LIST,现在LINUX发送数据不在使用队列了 ====================================================================================== XEngine2021-V7.19.1.1001 Build0820 下载组件 下载模块 HTTP和FTP修正文件状态不匹配导致的问题 HTTP现在状态查询支持返回HTTP状态码了 系统组件 系统函数模块 文件函数创建稀疏文件现在使用64位的内部值了 文件函数替换内容函数被删除,不在使用 文件函数增加了拷贝文件的函数 基础组件 基础模块 文件操作删除了截断函数和拷贝函数 ====================================================================================== XEngine2021-V7.19.0.1001 Build0818 下载组件 下载模块 HTTP创建优化了部分代码,减少了错误输出 HTTP创建函数断点续传修改内部逻辑,现在直接通过用户指定RANGE了 HTTP修改优化内部设置属性函数调用过程 HTTP现在支持指定方法进行文件上传了 FTP优化了部分代码,减少错误输出并且不在检查断点续传的文件是否存在了 系统组件 系统函数模块 文件类创建稀疏文件修正创建崩溃失败的问题并且修改了创建方式 帮助组件 数据库模块 SQLITE优化内部锁代码 授权模块 序列号生成和处理现在可以忽略小时分钟秒字段只使用年月日了 更新组件 删除了更新组件下的所有模块,现在使用开源发布了 标准组件 HTTP服务模块 HTTP服务类现在支持设置是否允许跨域访问了 核心组件 核心服务模块 TCP和UDP的XCore现在发送失败不会计算流量大小了 TCPXCore发送函数现在支持检查是否可写了 TCPXCore启动函数现在可以设置是否使用地址重用和流量统计时间了 广播和组播现在发送者不能接受数据了 通信类剪贴板修正拷贝的内容只在当前进程生效的问题 基础组件 基础模块 字符串类通过字符获取KEYVALUE函数现在支持输入和KEY为同一缓冲区了 内存类释放C格式内存现在会判断是否为NULL了 时间类BaseLib_OperatorTime_GetTimeOfday函数在linux下也有作用了 时间类BaseLib_OperatorTime_GetTimeOfday增加了一个合并字段和统一了多系统下的值 ====================================================================================== XEngine2021-V7.18.0.1001 Build0804 其他更新 公用头增加了版本标识定义和新的二级指针定义 公用头删除了多余的定义.尽量减少冲突选项 协议头的用户注册信息修改名称,并且删除了QQ字段 协议头删除了消息队列协议,移到了消息队列服务项目中 帮助组件 授权模块 本地验证字段增加了CDKEY创建日期字段 本地验证注册日期字段名称进行了修改 组包模块 标准组包,扩展组包,自定义组包增加了无拷贝获取包内容的函数 标准组件 HTTP模块 服务类增加了无拷贝获取包内容的函数 服务类修改内部BODY缓冲区内存管理方式为C的MALLOC模式而不是NEW Websocket模块 组包类增加了无拷贝获取包内容的函数 组包类获取函数修正某些时候获取内容崩溃的问题 连接类连接打包函数增加了设置HOST字段内容的功能 修正LINUX编译丢失扩展组包的问题 网络组件 网络帮助模块 HTTP请求函数现在不在使用string导出参数类型了,而是指针的指针了,现在需要手动删除内存 HTTP请求修正执行请求body参数为NULL无效导致的问题 核心组件 核心安全模块 API类加解密优化代码,解决某些时候无法正常解密的问题 核心服务模块 广播类接受数据现在可以设置超时和非超时了 广播类现在发送者设置IP后可以接受数据了 组播类接受数据现在可以设置超时和非超时了 组播类现在发送者设置IP后可以接受数据了 基础组件 基础模块 内存增加了一个释放二级指针内存的函数 ====================================================================================== XEngine2021-V7.17.0.1001 Build0723 协议更新 删除了P2XP协议定义与协议负载结构 验证组件 删除了服务模块 删除了客户端模块 删除了序列号生成模块,被重构并且移动到帮助组件授权模块 删除了本地验证模块,被重构并且移动到帮助组件授权模块 网络组件 消息分发模块-增加 消息分发模块现在不需要在依赖NetHelp_APIHelp模块了 网络函数模块 网络类修正获取IP地址函数会陷入死循环的问题 帮助组件 授权模块-增加 序列号生成器增加支持,同授权组件下的序列生成功能 序列号现在不在内部保存,生成的时候会直接导出所有内容了 本地授权增加支持,同授权组件下的本地授权功能 本地授权现在为明文,如果需要加密,需要用户自己使用加解密模块 解压缩模块 错误码定义现在进行了统一 组包模块 优化了自定义包,标准包和扩展包获取任务池函数的性能 标准组件 HTTP服务模块 服务类优化了获取任务池函数性能 WebSocket模块 包管理器优化了获取任务池函数性能 包管理器修正类导出权限不正确的问题 包管理器修正在使用任务池特性的时候销毁可能崩溃的问题 编解码器修正编码函数在处理大于126数据的时候不正确导致的问题 增加了扩展包管理类,现在可以在一个应用中创建多个ws服务了 消息组件 DDS消息分发模块已经被移动到网络组件下 ====================================================================================== XEngine2021-V7.16.0.1001 Build0716 P2XP组件 删除了P2XP协议模块 删除了数据分发模块 删除了客户端模块 删除了节点管理模块 网络组件 网络函数模块 域名类现在可以解析端口号了 标准组件 HTTP服务模块 文件模式下不允许在一个连接下处理多次上传请求了 核心组件 核心函数模块 套接字函数获取网络连接类型现在支持LINUX系统获取了 核心服务模块 TCPXCORE修正端口重复绑定导致的问题 基础组件 基础模块 字符串类HEX转字符串优化代码,减少部分多余操作 句柄类优化句柄生成代码,修正范围值不正确的问题,增加新的参数 ====================================================================================== XEngine2021-V7.15.0.1001 Build0702 其他更新 安装脚本现在支持单独脚本下载完整引擎并且安装了 协议更新了消息队列协议,增加了主题关联协议 网络组件 网络函数模块 HTTP增加了全局设置超时函数功能 HTTP的POST和GET现在可以根据阐述速率进行超时设置了 消息队列 消息队列模块-模块已经被移除,现在开源发布了 标准组件 HTTP服务模块 服务类修正SEND打包函数设置的负载大小超过取值范围导致的问题 服务类现在激活函数在任务池模式下可以激活所有事件了,解决可能无法退出的问题 WebSocket模块 包管理器激活函数在任务池模式下可以激活所有事件了,解决可能无法退出的问题 帮助组件 组包模块 标准,扩展,自定义类对任务池关键操作加锁,解决退出的某些情况下会崩溃的问题 标准,扩展,自定义类现在激活函数在任务池模式下可以激活所有事件了,解决可能无法退出的问题 核心组件 核心服务模块 TCPXCORE发送函数现在可以设置重试超时时间了 TCPXCORE发送函数修正发送的数据错误处理不正确导致的问题 基础组件 算法模块 计算类的流量休眠现在最后一个参数的时间基数为微秒了 ====================================================================================== XEngine2021-V7.14.0.1001 Build0625 其他更新 修正某些导出编码类型不正确的问题 协议头删除了不需要的存储协议 协议头后台控制调整协议并且增加了连接控制协议 客户端组件 客户端模块 TCP客户端调整参数顺序,与UDP同步了 网络组件 后台管理模块已经被删除,现在作为开源发布 压力测试模块 压力测试模块现在修改了手段了名称 压力测试模块修正X86和X64版本混淆导致无法使用的问题 网络函数模块 HTTP请求的POST和GET修改了连接超时时间,现在超过两秒就超时 HTTP请求的POST和GET函数参数调用顺序修改,现在更加方便使用了 帮助组件 数据库模块 PG数据库增加了通过结构体连接到服务器的功能 PG数据库修改查询返回数据函数的参数并且需要指明查询个数了 PG数据库修改了查询记录结果函数输出内容,优化代码 PG数据库修正连接判断不正确导致一直连接失败的问题 PG数据库修正查询函数无法正确处理返回值导致的问题 标准组件 HTTP服务模块 帮助类修正验证函数没有导出正确的验证类型的问题 服务类打包数据发送函数现在支持设置RANGE范围字段了 基础组件 基础模块 字符串修正GetEndChar获取内容不正确的问题并且修改了函数名为GetWithChar ====================================================================================== XEngine2021-V7.13.0.1001 Build0618 全局更新 jsoncpp现在采用静态库了,解决部分冲突引发的问题 协议更新 文件协议MD5字段修改了HASH字段,现在支持MD5和HASH1等内容传递了 存储组件 存储组件已被移除,以后根据需要在添加,目前不需要 存储核心模块已经从引擎中移除,现在开源发布 存储协议模块已经从引擎中移除,现在开源发布 验证组件 序列号模块 生成的序列号的自定义时间现在日期和时间进行了分段 获取序列号自定义时间现在能够正常识别时间格式了 帮助组件 组包模块 自定义组包类修正组包大小判断不正确导致的崩溃问题 标准组件 HTTP服务模块 服务类修正没有初始化客户端模式导致的问题 服务类修正组包大小判断不正确导致的崩溃问题 服务类修正投递非完整包到队列的时候任务池会被触发的问题 服务类现在支持设置包大小限制了 核心组件 核心安全模块 类型定义现在统一为XENGINE开头了 TCPXCORE修正退出的时候某些时候死锁的问题 TCPXCORE修正退出的时候线程没有正确退出导致的问题 TCPXCORE增加了是否可发送函数接口设置回调.现在可以获得是否可以发送数据事件了 UDPXCORE修正退出的时候线程没有正确退出导致的问题 UDPXCORE删除了投递数据函数,在UDP下没有多大作用 SCTPCORE修正退出的时候线程没有正确退出导致的问题 基础组件 算法模块 计算类新增加一个根据流量限制计算休眠时间的函数,方便使用 基础模块 时间类增加了字符串时间转整数型时间的函数 ====================================================================================== XEngine2021-V7.12.0.1001 Build0604 其他更新 修正LINUX安装脚本编码错误导致的问题 修正LINUX安装脚本目录结构变化导致安装失败的问题 P2XP组件 节点模块 类型定义名称修改统一 删除了获取所有节点函数,不在使用 增加了获取公网IP地址列表的函数 标准组件 HTTP服务模块 帮助类获取验证信息函数修改,现在只会获取到验证内容和类型了 服务类获取数据函数修改参数定义顺序,现在可以忽略部分参数了 服务类增加了获取和设置接受模式的函数.获取完整包或者每次接受一次都获取一次 服务类内部增加了大数据包处理模式支持,现在可以支持文件上传操作了 服务类发送数据现在可以指定数据缓冲区为NULL,通过自己处理数据内容了 服务类增加内部事件状态处理,解决某些情况下销毁的时候与事件冲突崩溃的问题 SIP协议模块 服务类和客户端类内部删除了摘要验证函数的支持 服务类删除了用户验证管理相关函数,现在由使用者管理了 服务类增加了设置和获取用户验证信息的功能函数.可以直接设置用户的信息摘要值了 系统组件 系统函数模块 进程类创建和运行进程函数修正无法执行某些控制台程序的问题 进程类创建和运行进程函数修正参数无法生效的问题 进程类创建和运行进程函数现在支持创建的窗口设置为隐藏或者显示了 核心组件 核心服务模块 套接字操作类修改多播代码位置名称,统一命名 TCPXCORE修正在WINDOWS下客户端关闭连接服务器处理不正常导致崩溃的问题 核心安全模块 错误定义进行了修改并统一命名 帮助类增加了HTTP BASIC加密和解密函数支持 帮助类增加了HTTP DIGEST信息摘要验证函数的支持 池管理模块 无队列线程池现在有锁了 无队列线程池修改线程创建使用的方式,采用了标准类而不是系统API 基础组件 算法模块 计算类增加了设置和获取流量次数限制的功能函数 计算类获取发送和接受流量以及次数现在增加了是否超过限制的参数了 ====================================================================================== XEngine2021-V7.11.0.1001 Build0524 协议头更新 加解密定义增加了X加解密 验证组件 本地验证模块 获取过期时间现在不在需要类型参数了 数据结构删除了注册自定义信息添加了过期类型并且优化了字段 现在构建时间可以根据过期类型来构建了 现在过期类型支持序列号结构的ENUM_AUTHREG_GENERATESERIALTYPE来实现了 注册信息文件类型名称现在统一命名方式 注册信息结构增加是否初始化成员,可以带CDKEY发布,更加方便 网络组件 网络函数模块 HTTP的POST和GET现在优化了代码,返回的数据为STRING了,方便使用 HTTP的POST和GET减少了一层函数调用 HTTP删除了CHUNKED和CUSTOM操作代码,现在使用另外一套管理了 HTTP现在支持创建,删除,设置,执行一个网络请求了 HTTP的创建的HTTP请求支持多次请求和处理了 HTTP的创建请求现在支持设置超时时间了 下载组件 下载模块 FTP创建下载错误的时候修正释放内存不正确的问题 BT下载模块-增加 创建器支持创建多个BT种子文件 创建起支持添加NODE,TRACKER,SEEDS节点服务信息 创建起支持设置创建者,附加信息和证书信息 创建者支持导出种子文件和BTMERKLY文件 创建起支持设置块大小 解析器支持解析多个BT种子文件 解析器支持获取NODE,TRACKER,SEEDS节点信息 解析器支持获取HASH创建者,附加信息 解析器支持获取块个数和大小信息 解析器支持获取获取种子的磁力链接 解析器支持获取种子文件列表信息 下载器支持创建多个下载 下载器支持打开指定种子或者磁力链接 下载器支持设置下载保存目录和设置临时文件 下载器支持查询下载状态,错误状态,写入状态,映射状态等信息 下载器支持获取下载进度信息 下载器支持设置关闭和启用UPNP 下载器支持设置暂停下载和恢复下载 ====================================================================================== XEngine2021-V7.10.0.1001 Build0503 全局更新 修正某些地方字符串定义编码类型不明确的问题 修改__int64定义改为__int64x 解决歧义 协议更新 文件协议删除了扩展协议,合并了文件所属用户到标准协议 验证组件 验证服务模块 修正获取时间用户和地址信息字段不正确的问题 存储服务 文件结构现在与标准协议的文件协议结构合并了 用户结构现在与标准协议的用户信息结构合并了 存储服务模块 数据操作查询用户修正错误码没有设置的问题 数据操作修正字符集设置错误导致的库创建问题 数据操作修正统计信息不正确的问题 数据操作修正插入文件判断错误的问题 数据操作增加了通过MD5查询指定唯一文件的函数 数据操作修正删除文件更新用户表错误的问题 数据操作修正处理线程无法正常退出的问题 存储协议模块 客户端注册请求现在支持填充更多信息了 服务类注册解析现在导出结构体而不是一个一个字段了 插件组件 插件信息模块 设置类被删除,没有作用 插件列表类增加,支持创建器和解析器 创建器和解析器支持创建模块和函数列表 创建器和解析器支持获得和配置函数和模块个数 系统组件 系统函数模块 进程类修正进程重启和自动重启函数没有导出的问题 帮助组件 日志模块 现在日志的定义类型名称统一为XENGINE开头了 组包模块 文件类解析头函数现在可以正常组包了 文件类解析头函数现在处理了协议上的错误等问题了 文件类创建函数删除了组包和处理协议相关代码 文件类创建函数和解析函数现在必须通过创建函数创建客户端 标准组件 修正SIP和UPNP发布名称大小写不正确的问题 电子邮件模块 修改导出定义的信息结构中的字符串定义,现在是数组而不是指针了 代理服务模块 隧道代理修正关闭没有释放线程资源的问题 隧道代理修改协议分割解析方式,解决崩溃问题 隧道代理修正验证用户密码始终不正确的问题 隧道代理现在用户连接和用户离开也有事件回调了 SIP协议模块 协议类现在打包请求和回复可以交换目标和请求地址了 协议类现在只有FROM才会生成新的随机数了 基础组件 基础模块 字符串分割文件名和路径函数删除了第四个参数并且解决某些时候路径处理不正确的问题 ====================================================================================== XEngine2021-V7.3.0.1001RC Build0423 全局更新 更新所有网络地址转换采用了新版本跨平台的函数,而不是老旧的函数了 __int64定义全部修改成int64_t,解决平台不同造成的问题 消息组件 消息分发模块 公有类查找域信息现在支持判断是返回所有域ID还是指定域了 公有类请求域信息修改请求代码,现在可以指定ID和返回列表 公有类优化删除域和主题函数锁性能 公有类现在保存的数据进行了优化和修改 公有类修改网络查询的时候没有内容的处理逻辑 公有类增加了几个函数用于操作发布者和订阅者方便操作 公有类删除了多余的函数与多余的代码 公有类现在创建的主题可以指定网络类型了 公有类在删除域或者主题的时候现在必会发送通知消息了 发布者流程修改适配最新版本,并且优化了创建代码 订阅者流程修改适配最新版本,并且优化了创建代码 订阅者插入订阅函数进行了优化,现在只会匹配到的订阅才会创建了 订阅者删除函数解决关闭TCP不正确和锁的问题 订阅者读取函数进行了修改,解决了多个发布者的时候丢失数据的问题 编解码组件 媒体包管理器 打包类提取MP3音频会过滤图片信息了 解包类增加了获取所有流信息的函数 解包类修改了代码,现在支持设置所有导出的流了 帮助模块 枚举类现在如果没有视频设备不会在打印错误信息了 枚举类现在对于LINUX的视频设备枚举可以得到正常的值了 枚举类LINUX下音频设备枚举现在可以正确导出值了 网络组件 网络函数模块 网络类获取IP地址函数现在本地地址返回的是一个数据结构列表了 网络类获取IP地址现在允许过滤非本地网卡地址的功能设置了 网络类获取IP地址修正获取到的信息部分不正确的问题 后台模块 获取信息现在增加了获取机器所有网卡列表信息的功能了并且序列号不在包含MAC地址 测试模块 测试模块现在发送结束后的回调次数是请求的次数了,而不是0 下载组件 下载模块 FTP和HTTP现在下载完成后的大小是下载的真实大小而不是0了 FTP和HTTP现在查询任务信息在非回调函数的时候也可以使用了 FTP和HTTP现在下载失败会显示以下载的大小信息了 验证组件 验证服务模块 数据库操作现在查询序列卡函数可以直接获取所有序列卡信息了 数据库操作删除了获取序列卡信息的函数,不在需要 帮助组件 日志模块 现在日志输出采用了安全版本来实现打印日志 现在扩展了日志输出缓冲区大小 系统组件 系统函数模块 硬件类获取硬盘空间优化计算代码 硬件类获取序列号函数删除了MAC地址获取功能.功能冲突 文件类现在枚举文件的路径输入可以自动处理结尾符了 系统类修改LINUX获取系统版本的方式,解决不正确的问题 进程类修正读取进程命令返回内容对于开始行数处理判断不正确导致的问题 核心组件 核心服务模块 UDPIOCP获取完成端口处理结果删除了一个多余的处理逻辑 高级网络模块 套接字删除了获取主机地址名称的函数.功能冲突 套接字删除了获取网卡地址列表的函数.功能冲突 套接字域名转换函数修改了内部实现,使用了新的函数 ====================================================================================== XEngine2021-V7.2.0.1001BT Build0418 其他更新 解决JSONCPP无法正确处理中文字符的问题 流媒体组件 标准客户端模块 拉流器修正错误的计算音频帧率导致的问题 RTP协议模块 解析和打包类修正没有初始化互斥锁导致的问题 打包类修正获取RTP包的时候元素个数处理错误导致的崩溃问题 HLS模块 M3U8关闭文件句柄现在可以指定是否删除文件了 切片类现在关闭句柄的时候对于线程判断能够正常处理了 音视频组件 帮助模块 设备信息修正获取设备列表一直都为空的问题 媒体包管理模块 转换器修正关闭的时候可能引起的异常问题 播放模块 音频和视频播放修正退出的时候引起异常的问题 采集器模块 修正没有区分系统导致采集器采集名称错误的问题 修正没有启动采集任务的问题 修正关闭函数的线程判断不正确引起的问题 帮助组件 日志模块 现在不使用文件日志可以不输入日志文件路径了 标准组件 邮件客户端模块 修正回调函数定义缺少调用约定声明的问题 修正内存没有初始化导致的问题 POP3现在不需要设置端口号了,通过URL指定即可 POP3现在索引选项能够正常使用了 NAT客户端模块 STUN解决没有正确判断回复响应码的问题 插件组件 插件核心模块 函数指针的调用约定现在使用默认而不再申明了 修正执行指定函数的时候判断函数名称不正确导致的问题 客户端组件 客户端模块 TCPSELECT扩展函数修改了内部映射容器使用模式,解决程序退出崩溃的问题 系统组件 系统函数模块 文件类修正枚举文件的时候参数使用导致的问题 基础组件 基础模块 时间类修正获取GMT时间一直返回错误的问题 ====================================================================================== XEngine2021-V7.1.0.1001PT2 Build0414 全局更新 现在_define.h导出头文件的字符相关变量类型全部是ANSI版本了 移除了服务文件夹,现在单独一个版本库了.此版本库仅作为引擎代码 修正互斥锁内存管理不正确导致的问题 修改NETENGINE开头的数据结构为XENGINE开头 为了跨平台修改了_tcscpy_s的安全版本函数 客户端组件 客户端模块 UDX修正退出的时候没有正确判断功能导致的崩溃问题 下载组件 下载模块 HTTP和FTP修正删除任务的时候崩溃问题 网络组件 远程函数模块 帮助类内存申请现在元素本身大小可以正确申请了 协议类增加了打包二进制流协议函数 客户端修正发送数据没有带协议头的问题 帮助组件 日志模块 日志类现在换行操作在统一地方操作,而不是分开多次操作了 日志类现在输出的缓冲区大小超过系统大小将会被截断而不是不可预料的结果了 核心组件 核心服务模块 TCPXCORE修正WINDOWS下没有对SOCKET赋值导致成功后死循环退出的问题 TCPXCORE修正销毁函数线程处理不正确导致卡死的问题 UDPXCORE修正线程池参数问题导致无法处理数据的问题 UDX修正锁没有初始化导致的崩溃问题 PIP修正缺失的导出函数问题 池管理模块 内存池修正申请内存使用不当照成锁的问题 内存池修正释放内存的时候使用的函数不正确导致的问题 网络函数模块 套接字获取网络参数函数修正获取失败的问题 套接字获取网络参数修正内存使用不当造成的崩溃问题 安全模块 修正WINDOWS无法使用SM加解密类型的问题 系统组件 系统文件模块 进程类网络读取修改导出函数参数类型,现在不是LIST了 基础组件 基础模块 计时器类修正windows版本没有获得计算机频率导致的问题 ====================================================================================== XEngine2021-V7.0.0.1001PT1 Build0409 全局更新 协议定义全部修改为XENGINE开头 合并了WINDOWS和LINUX的代码.现在维护一套代码了 WINDOWS项目全部使用VS2019重建了 LINUX项目对MAKEFILE全部进行了优化 错误码定义全部修改,现在统一错误码类型 线程使用方式采用了C++11的线程类特性.线程内存管理使用C++14的特性 锁的使用采用了C++17的读写锁和互斥锁特性 原子锁使用了C++11的特性而不是系统特性函数 Sleep函数使用了跨平台的C++11特性 网络模块和组件全部采用XEngine相关名称进行了重命名 帮助组件 数据库模块 ACCESS相关代码已经被删除,可以使用sqlite代替 客户端组件 客户端模块 SOCKET下面TCP,UDP各种模型现在统一了接口函数名称 标准组件 远程函数调用模块 核心类删除了HTTP内部代码,需要自己添加 核心类现在可以由用户手动关闭指定客户端了 协议类客户端和服务器打包函数现在不会在打包协议头了,协议头需要用户自己组装 邮件客户端模块 POP3和SMTP关闭函数修改了代码,现在不需要导出错误并且不能有默认参数了 系统组件 系统函数模块 系统类删除了DLL注册的两个函数 系统类优化远程关键函数代码流程 进程类注册进程重启函数现在不会有冲突了 进程类优先级现在不在使用枚举类型,统一使用int的大小来表示优先级大小了 下载组件 下载模块 HTTP和FTP优化锁的使用和修改一些没有合理使用锁的代码 HTTP和FTP修改了内存释放与申请不匹配的问题 HTTP和FTP删除了回调映射容器相关代码,现在使用统一的容器映射 HTTP和FTP删除了关闭下载任务的错误返回,现在只返回成功了 核心组件 核心服务模块 TCPSELECT接受连接线程处理接受客户端连接一些逻辑不正常的问题 SOCKET下面TCP,UDP各种模型现在统一了接口函数名称 EPOLL和IOCP采用NetCore_*XCore_* 重叠IO和POLL采用NetCore_*XPoll_* 移除原始套接字到protocol模块中 移除SPI协议类到系统组件下 移除网络帮助类相关函数到netxapi模块下 核心安全模块 服务类删除和停止函数现在不在导出错误码并且修改停止函数内部流程 基础组件 基础模块 字符串UnicodeToUTF修正没有导出转换后字符串大小的问题 ====================================================================================== XEngine2021-6.33.0.1001 Build0401 其他更新 公用头文件 增加了对于基础库内存使用参数的变量类型定义 增加了有符号短整数类型定义 协议头文件 增加了消息队列中的消息获取次数的成员变量 标准协议头修改了保留字段定义方式,扩展了字段定义 服务程序 验证服务 服务配置现在支持XCrypto加解密数据传输模式 线程池任务创建函数使用方式进行了修改 发送和接受数据函数处理方式修改,现在支持加解密传输 后台服务 后台服务对邮件信息发送采用了配置文件读取了 后台服务支持加解密邮件配置文件了 后台服务现在可以由用户自己配置邮件地址并且可以不上传信息了 存储服务 修改代码对于最新版本函数支持 删除了对于WLAN协议的支持,以后在添加 消息服务 修改代码对于最新版本函数支持 P2XP组件 P2XP协议模块 服务协议地址列表回复打包函数现在仅仅支持打包同一私有地址下的列表而不是公网下的列表 消息组件 消息队列模块 消息管理器修改锁的使用方式,解决可能在多线程下崩溃的问题 消息管理器现在支持获取的时候判断消息获取次数是否足够并且删除了 编解码组件 视频编解码模块 编码器初始化参数现在支持设置编码帧率了 标准组件 邮件客户端模块 SMTP协议修改SSL发送流程支持,现在默认支持SSL和普通发送邮件 POP3协议修改SSL发送流程支持,现在默认支持SSL和普通接受邮件 HTTP服务模块 修正包管理器获取可用客户端函数缺少参数的问题 核心组件 核心安全模块 证书类修改了函数名称定义,统一了格式 X加解密-新增 X加解密增加了加密和解密函数的支持 X加解密支持数据区校验和大小输出 X加解密支持设置或者不设置自定义密码 核心服务模块 TCPSELECT现在读取事件函数修改读取事件输入操作方式,使用与来操作要读取的事件了 基础组件 基础模块 内存类申请三级内存函数现在减少参数输入,删除了一个多余的参数 时间类增加计时触发器 计时触发器支持创建管理多个触发器 计时触发器支持时间间隔计算器和时间间隔触发器 计时触发器支持以毫秒计时以及设置触发次数的功能 时间类移动计算时间间隔函数到时间触发器里面集成了 ====================================================================================== XEngine2021-6.32.0.1001 Build0324 全局更新 修改了导出函数使用的容器参数现在修改为三级指针并且提供了元素个数参数 音视频组件 媒体文件模块 文件打包类解决了在只有音频或者视频的时候打包出错的问题 P2XP组件 节点管理模块 节点管理器获取局域网现在只能获取指定私有网络下的列表了 节点管理器增加了获取公网下所有公有内网IP地址列表的函数 帮助组件 数据库模块 MONGODB统一参数,现在BSON输入结构为字符串了而不是无类型指针 MONGODB执行命令函数现在支持JSON和BSON格式输入了 MONGODB插入BSON修正操作不正确导致的问题 MONGODB插入JSON修正没有释放内存的问题 MONGODB查找JSON和BSON函数没有申请对象空间导致的问题 MONGODB更新BSON函数修正因为没有处理申请内存导致的问题 MONGODB删除函数BSON修正没有对内存管理造成的问题 MONGODB删除函数JSON修正没有释放内存的问题 MONGODB统计BSON函数修正没有对内存进行操作导致的问题 MONGODB统计JSON函数修正没有释放内存的问题 核心组件 核心服务模块 UDPIOCP修改了内部创建线程池的机制 基础组件 基础模块 字符串删除了字符串转换函数 字符串增加了UNICODE-UTF8 UTF8-UNICODE ANSI-UTF8 UTF8-ANSI的转换函数 字符串删除了预定义操作符并且移动了句柄定义到公用头文件下面 内存操作增加了处理函数 内存操作提供了申请和释放三级内存的函数 算法模块 字符串增加了16进制字符串转为10进制整数的功能函数 ====================================================================================== XEngine2021-6.31.0.1001 Build0301 其他更新 协议更新 增加了获取用户信息和设置用户信息协议 服务程序 验证服务 配置管理器删除了CDKEY验证相关代码 配置管理器增加了设置用户注册试用的配置 用户管理现在支持给所有在线用户发送消息了 服务器注册处理函数现在可以支持自动配置注册成功后写试用信息的功能了 服务器一键验证处理函数现在可以支持对次数试用的处理了 服务器增加了获取和设置用户信息协议的处理函数 服务器日志功能现在有最大缓冲区限制了,超过将清理 服务组件 服务管理程序 修改了DLL目录,删除了子目录,现在直接和程序放一起了 修正退出的时候死锁的问题 修正日志记录程序大小不正确导致的问题 编解码组件 音频编解码模块 音频类初始化解码器现在可以不设置回调函数了,并且支持设置采样大小了 音频类解码函数现在可以直接导出解码的数据了 音频重采样增加了写大小支持,现在支持解码重采样了 音频缓冲区队里修改,现在支持大内存并且必须调用释放内存接口了 帮助类现在提供了新函数获取一个音频帧的读写大小 帮助类过滤器信息结构现在使用的通道层改为通道号字段了 帮助类过滤器修正内存释放不正确的问题 帮助类混合器初始化修改内存申请方式并且删除了不需要的内存申请 帮助类混合器初始化修正了过滤器字符串设置导致的问题 帮助类混合器转化函数现在被取消,使用了input和output替代 帮助类混合器输入输出函数现在的帧内存每次申请了,解决内存被释放问题 帮助类混合器输入输出函数现在输出的数据直接进行了输出,不在做转换 验证组件 客户端模块 网络类改名为管理器类 管理器修改插入函数为设置函数,修改歧义 管理器修改过期计算函数,现在支持计算天数次数,自定义卡过期时间了 管理器过期计算函数修正计算超时判断不正确的问题 服务端模块 服务器的用户验证信息用户表修改,现在使用了协议头的用户信息结构.结合使用 数据库类增加了设置用户信息的函数,现在可以修改用户信息了 数据库类一键试用增加了设置函数现在支持设置验证信息了 基础组件 基础模块 时间类修正一个函数导出不正确的问题 ====================================================================================== XEngine2021-6.30.0.1001 Build0223 服务管理组件 守护程序 修改安装的脚本删除多余的模块 客户端组件 客户端模块 NETBIOS已经被删除了 UNIX域被增加,现在支持操作流式UNIX域了.目前不支持消息模型 UNIX域支持发送和读取数据,并且读取数据支持IO轮训模式 UNIX域支持关闭指定连接 编解码组件 媒体文件模块 媒体处理回调函数修改媒体类型标识符 媒体打包输入流函数重新修改了代码,现在支持输入多个音频流轨道 媒体打包删除了内部的复用函数功能,不在需要,解决非AAC音频格式问题 媒体打包启动函数优化内部代码,现在不需要分别处理音视频了 媒体打包处理线程现在支持多音频轨道与视频进行音视频同步写了 流媒体组件 标准推拉流模块 编码推流现在支持初始化的时候配置是否启用内部延迟推流了.可以解决推流过快导致的问题 编码推流修改内部是否启用线程参数可能会影响到全局推流而导致的问题 原始推流现在支持初始化的时候配置是否启用内部延迟推流了.可以解决推流过快导致的问题 原始推流修改初始化参数变量,解决一些歧义 核心组件 核心服务模块 NetBios已经被删除了,这是一个古老的协议,不在支持 TCPSOCKET删除了消息选择和事件选择相关服务器代码,不在启用,请使用选择,重叠,IOCP模型代替 SOCKET服务器相关回调函数统一了回调接口,现在IOCP,OVERLAPPED,SELECT,都采用同样的回调函数 SOCKET的SELECT和OVERLAPPED回调函数现在扩展了导出参数,提供了客户端SOCKET 串口,UDX等数据回调现在采用了统一的回调处理函数 串口类修改了锁使用,现在支持多线程环境下操作了 串口类修改回调函数和线程的内部变量,全部集中到一个映射里面,解决数据冲突问题 串口类修正自定义回调函数参数不生效的问题 串口类修正发送和读取数据可能会创建事件失败的问题 串口类线程读取函数现在直接使用指针得到相应数据而不是通过map映射模式 串口类线程读取函数现在读取缓冲区使用栈,而不是使用堆 串口类优化了部分代码,删除了一些不需要的代码 串口类关闭串口现在不在支持关闭所有,必须单个关闭 串口类错误定义现在已经与LINUX尽量同步了 UNIX域操作新增加,现在支持AF_UNIX协议了,本地高性能通信模块 UNIX域目前支持流模式,消息模式暂时不支持 UNIX域支持统一回调函数 UNIX域支持发送数据,支持回调自动接受数据,并且内部支持判断是否可读写 UNIX域支持客户端离开后自动清理客户端资源 UNIX域支持主动关闭一个客户端资源 UNIX域为多线程安全模型 基础组件 基本模块 信号量等待信号现在只需要一个函数就可以处理等待超时和无限等待了 信号量创建的时候可以指定名称和最大信号量个数了 信号量现在支持判断是否存在了,可以用于进程间互斥 信号量激活函数现在可以获得待激活的信号个数了 时间计算修改了内部函数为64位并且完善了时间加减操作的说明 ====================================================================================== XEngine2021-6.29.0.1001 Build0217 其他更新 协议头 现在验证协议的信息服务不在需要请求和服务,改为通知类型 服务程序 验证服务 用户管理修正发送数据协议没有带上大小而造成的问题 序列管理现在修改删除了多余的卡类型,增加了次数卡的支持 主程序修正用户离开的时候没有删除响应用户列表的问题 主程序修正发送数据没有获取对客户端地址而发送不成功的问题 主程序修正用户续费充值服务程序计算时间不正确导致的问题 主程序获取用户时间简化了协议格式 主程序现在用户的信息不在需要回复包处理 验证组件 客户管理模块 协议类修改支持最新的用户信息通知协议 序列卡生成模块 扩展类修正扩展函数启动函数内部没有生效造成的问题 序列卡类生成和获取函数卡类型现在增加了支持次数卡的功能 序列卡类现在删除了周卡,半年卡年卡等多天数卡,现在直接由自定义时间指定多天数 序列卡开始函数对函数调用顺序进行了修改 序列卡修正获取自定义时间结构不正确的问题 服务管理模块 管理器增加了设置用户过期 管理器增加了过期日期的信息字段 管理器获取时间函数现在可以获取全部信息了 管理器关闭客户端函数修正只能处理分钟卡的问题 管理器重写了内部的时间管理线程.解决卡类型不同造成的问题 管理类修改了销毁函数,解决了运行中退出的时候冲突问题 数据库类删除了多天卡序列号操作相关代码.不在支持 数据库类增加了次数卡的支持,现在能够正确识别次数卡了 数据库类现在统一了充值函数操作入口,不在区分类型来实现充值函数了 数据库类现在时间格式修改为统一的SQL时间格式类型 数据库类初始化增加了是否允许用户改写充值卡类型的功能 数据库类修正用户离开函数操作的时候对于天数计算不正确的问题 帮助组件 日志模块 日志类删除了对于客户端网络的支持,调用者需要自己提供网络层来发送数据 日志类如果启用了网络日志现在将在内部构件一个队列了 日志类现在提供了获取网络日志缓冲的函数,现在调用者可以通过此函数获得一条完整的日志协议和数据\ 日志类修正发送日志协议负载大小设置不正确导致的问题 流媒体组件 RTP包模块 打包类发送数据函数现在会判断是否超过内部缓冲区大小并且会做相应处理了 打包类发送数据函数修正由于推送数据过多导致缓冲区内部异常的问题 打包类发送数据函数对于内部错误返回处理进行了优化 打包类NAL单元数据内部增加了起始字节大小的字段 标准推拉流模块 编码推流类写入开始头函数现在会判断是否初始化成功音视频基础信息了 编码推流类推送视频函数现在会判断是否超过内部缓冲区大小并且会做相应处理了 编码推流类推送视频函数修正由于推送数据过多导致缓冲区内部异常的问题 编解码组件 视频编解码模块 编解码类编码器初始化修改码率传参的类型,解决码率过大造成打开编码器失败的问题 帮助类删除了过滤器初始化因为ffmepg版本问题多余的代码 音频编解码模块 编解码类编码器初始化修改码率传参的类型,解决码率过大造成打开编码器失败的问题 核心组件 安全模块 证书类获取证书信息现在可以获取邮件地址了 核心服务模块 删除了SELECT轻量级服务相关功能,不在启用 删除了SELECT常规函数导出,现在只导出扩展TCPSELECT函数了 TCPSELECT优化内部变量和函数名称,删除了不需要的定义,现在采用统一规范了 TCPSELECT现在对于多线程操作进行了加锁.现在是多线程安全了 TCPSELECT在接受到用户进入信息后修正可能造成数据不同步的问题 TCPSELECT获取流量函数现在扩展为64位整数了 TCPSELECT回调函数修改参数调用顺序,规范调用方式,现在回调函数参数可以为空了 TCPSELECT关闭指定客户端函数现在不会强制结束线程,会交给系统释放了 TCPSELECT修正销毁关闭没有正确释放句柄资源的问题 TCPSELECT接受数据线程修改类指针的使用 TCPSELECT读取IO事件解决某些情况下取不到客户端对应信息的问题 TCPSELECT现在TCP保活计时器可以正常工作了 ====================================================================================== XEngine2021-6.28.0.1001 Build0209 服务程序 验证服务 修改客户过期处理流程 管理服务 增加了任务处理等待时间和任务请求地址的配置 修正日志无法正确打印的问题 流媒体组件 X推流模块 客户端推流类推送协议头函数修正拷贝协议导致的问题 帮助组件 数据库模块 MONGO修改统计函数使用,现在使用了最新版本函数替换 消息组件 消息分发模块 订阅类创建的时候修正拷贝信息不正确导致的问题 标准组件 UPNP模块 修改内部数据缓冲区,现在使用CHAR数据存放数据 验证组件 验证服务模块 网络验证事件回调现在不会主动删除用户登录信息了,需要使用者自己调用 网络验证事件现在能够正确输出用户剩余时间了 网络处理修正用户登录成功后马上被移除的严重问题 网络组件 后台服务模块 服务类现在请求任务都使用HTTP协议了 服务类删除了TCP连接和相关代码 服务类不在提供连接到指定连接的操作协议 服务类解析协议不在需要协议头了,通过JSON来处理 服务类协议处理函数现在对错误处理进行了完善 服务类对发送文件列表方式进行了修改 服务类处理任务现在可以对任务序列号进行区分判断了,可以过滤不需要处理的任务 基础组件 基础模块 字符串类修正UNICODE和ANSI转换函数没有释放内存的问题 时间类增加了时区转换函数,可以转换任意时区 系统组件 系统函数模块 进程类获取进程信息修正没有找到指定进程ID造成的问题 进程类获取进程信息现在可以获取进程所属用户了 核心组件 网络函数模块 流量类获取流量修改代码结构,优化内部代码和转义代码 安全模块 函数类加解密修正解密的数据导出的内容长度有多余数据的问题 函数类加解密函数现在支持国标SM4算法了 函数类摘要算法增加了SM3算法 证书类修正生成签名证书函数崩溃问题 证书类获取证书信息现在可以获得颁发者使用者和时间信息了 核心服务模块 套接字帮助类获取端口状态函数现在需要给第二个参数接口传递协议类型才能获取内容了 套接字帮助类获取端口状态修正某些情况下有内存泄露的问题 套接字帮助类获取协议信息函数修正无法获取正确内容的问题 套接字帮助类获取协议信息函数修改ICMP协议获取内容,适配了新的系统版本,解决崩溃问题 套接字帮助类获取网络状态列表修改导出的获取参数,现在使用LIST获取了 套接字帮助类获取网络状态列表函数修改获取列表判断不正确导致获取失败的问题 套接字帮助类修改ID转名称代码规范 命名管道修正等待一个客户端连接可能造成的死锁问题 命名管道现在对于服务端退出的时候会关闭客户端连接了 内存映射在做文件映射的时候,如果参数二的文件地址不存在会创建一个新的文件映射了 内存映射修正打开文件映射失败的问题 剪贴板操作增加了获取剪贴板内容和设置剪贴板内容函数 剪贴板现在支持输入和导出数据大小 剪贴板输入和输出数据格式定义不在导出,需要用户自己设置了 ====================================================================================== XEngine2021-6.27.0.1001 Build0205 全局更新 更新依赖的所有开源库为最新版本 帮助组件 数据库模块 SQLITE类现在使用外部dll,不在集成源码 消息组件 消息分发模块 公用类现在JSON使用现在全部替换为新版本的JSON库函数 更新组件 文件解析模块 匹配类启动函数现在需要提供JSON缓冲区大小了 匹配类里面的JSON使用现在全部替换为新版本的JSON库函数 版本读取类获取描述现在需要提供JSON缓冲区大小了 版本读取类里面的JSON使用现在全部替换为新版本的JSON库函数 帮助模块 安装函数现在需要提供JSON缓冲区大小了 模块中的JSON使用现在全部替换为新版本的JSON库函数 系统组件 系统函数模块 进程类执行进程获取返回内容的函数(SystemApi_Process_ReadCmdReturn)被移动到了此处 网络组件 后台模块 服务类更新了JSON开源库代码使用方式,现在使用新的解析函数来实现对JSON缓冲区的解析 XRPC模块 协议类更新了JSON开源库代码使用方式,现在使用新的解析函数来实现对JSON缓冲区的解析 存储组件 存储协议模块 公用协议更新了JSON库逻辑代码为最新版本 公用协议更新了解析函数现在需要提供缓冲区大小了 核心类更新了JSON库逻辑代码为最新版本 标准组件 SIP协议模块 包管理器已经被删除,现在可以使用HTTP模块的包管理器 配置器已经被删除,现在可以使用HTTP的配置器 协议类打包请求和回复优化对于VIA多字段处理,现在不会做多余的循环了 协议类打包回复不会在填充回复的状态码释义内容了,需要用户自己调用 服务类初始化现在不需要HTTP和MINI文件参数了 服务类创建现在不需要判断是否存在了,用户可以自行使用RfcComponents_SipServer_Exist判断 服务类现在的状态码释义内容需要用户自己填充 客户端类现在的状态码释义内容需要用户自己填充 HTTP协议模块 配置类初始化现在支持设置是否在末尾添加换行符了 配置类状态码初始化JSON修改使用了最新版本解析方式 配置类状态码初始化现在支持解析SIP状态码并且有错误JSON空处理了 基础组件 算法模块 增加了计算类函数 计算类支持追溯指定范围时间平均值 计算类支持计算范围时间调用平均数 计算类支持计算范围时间的平均发送和接受流量 核心组件 安全模块 证书类的X509证书解析函数由于OPENSSL版本更新不兼容现在功能被关闭,将在下个版本重新加入 核心服务模块 UDPIOCP修正接受缓冲区没有清理造成的问题 管道类分拆了代码,优化内部结构,优化错误集 匿名管道创建的时候修改了一些不合理的地方,删除了一些不需要的参数 匿名管道现在多线程为安全调用了 匿名管道修正没有对参数判断造成的崩溃问题 匿名管道修正关闭进程的问题.现在会结束子进程了 命名管道删除了回调函数的支持 命名管道删除了重叠操作支持 命名管道删除了线程的支持 命名管道修改使用模式,现在必须等待一个客户进入才能进行读写操作 命名管道修改锁的使用,现在对多线程支持更好 命名管道现在支持客户端打开一个指定连接了 命名管道现在每个函数都在自己的函数体里面进行查找操作,不在使用统一接口 邮槽删除了回调函数的支持 邮槽删除了线程的支持 邮槽现在支持打开一个客户连接了 邮槽修改了读取操作函数,现在支持判断剩余数据量和数据大小了 邮槽现在对于多线程支持更好了 邮槽现在每个函数都在自己的函数体里面进行查找操作,不在使用统一接口 共享内存创建函数删除了对于打开文件的一些指针操作 共享内存创建函数现在可以支持指定创建的内存大小了 共享内存对于锁的使用进行了优化 共享内存写操作可以写到指定位置和大小了 共享内存读操作对文件相关代码进行了清理,现在不需要单独判断处理了 共享内存读操作对于内存操作修改了代码,读取的内容流程代码可以指定大小和位置了 共享内存关闭操作进行了优化 共享内存现在可以获取创建的内存指针了,并且可以对其进行直接操作 共享内存现在可以打开一个现有的内存并且操作了 ====================================================================================== XEngine2021-6.26.0.1001 Build0116 网络服务 流媒体服务不在维护,已经被移除,现在只提供单独的开发模块 消息队列服务 增加了专用的事物处理代码文件 现在使用无队列线程池来处理任务 UDP现在不在单独创建线程,直接在回调中处理了 网络验证服务 线程函数修改为线程池来执行任务了 增加了网络快速试用功能与配置 验证组件 验证服务模块 数据操作删除了一个没有用的函数 数据操作修正初始化的ID没有设置为自动增长的问题 数据操作增加了网络快速试用操作.可以不注册登录,通过硬件吗直接验证试用 网络快速试用采用新的表来记录 网络快速试用支持插入,查询,删除,和清理操作 流媒体组件 自定义推拉流模块 推流类推送头的时候现在增加了音视频参数信息 拉流类增加了获取音视频参数信息的函数 拉流类现在必须要经过推送头才能进行播放了 拉流类修改了推送头部数据的时候接受到的内容处理方式修改 标准推拉流模块 修改了导出的音视频参数信息类型定义,现在为自定义推拉流的标准协议定义 消息组件 消息队列模块 包管理器删除了网络协议区分功能.现在投递进来的数据不在进行网络协议区分 包管理器简化了内部线程处理函数功能 包管理器增加了按照序列号存取的功能,目前只对非KEY包有效 用户管理增加,用于身份验证 用户管理支持记录登录时间 用户管理支持设置序列号 用户管理支持获取信息 协议类打包函数进行了重构,现在可以区分请求打包和回复打包了 协议类删除粗了POST和GET以及DELETE打包函数,集成在打包函数里面了 协议类增加了用户登录和回复协议打包 帮助组件 组包模块 标准组包类,扩展组包类,自定义组包.通用更新,优化分布池内部结构 修改了分布池组包数变量定义,现在使用了INT. 修改了GetPool导出参数,现在可以获得指定ID剩余处理包数量了 修改了清理和删除函数内部包记数模式 修改了清理和删除函数内部锁使用方式 修正创建ID没有初始化内部变量导致的问题 优化获取函数的内部锁和包记数方式 优化内部构建一个分布池包的时候一些多余的处理 创建ID现在不在处理有相同ID情况 创建ID优化部分锁的使用 标准组包类修正在POST中创建分布池不起作用的问题 标准组件 WEBSOCKET模块 打包类删除了自动创建ID的功能 分布池技术进行了改进,参考组包模块更新 HTTP服务模块 分布池技术进行了改进,参考组包模块更新 核心组件 安全模块 加解密API修正非对称加解密某些时候完成不了的情况 基础组件 基础模块 时间类获取时间跨度和差值修正某些时候计算不正确的问题 ====================================================================================== XEngine2020-6.25.0.1001 Build1220 编解码组件 音频编解码模块 编解码增加了G722和G729的支持 编解码编码函数修改导出编码帧方式,现在支持一次编码多个帧了 编解码编码类解决在重采样下投递缓冲区过大无法及时处理帧的问题 帮助类删除了AAC头打包函数 编解码帮助模块 媒体类AVHelp_MetaInfo_Get264Hdr函数增加了导出264起始字节个数的参数 媒体类AVHelp_MetaInfo_Get264Hdr函数增加了导出SEI参数信息的功能 媒体类增加了AAC-ADTS头打包的函数 视频编解码模块 导出文件帧类型增加了SPS,PPS,SEI类型 音视频采集模块 全局更新删除了写文件的功能函数 全局更新修正没有正确初始化可能导致销毁的时候崩溃问题 全局更新增加了启动录制的函数.解决可能参数未获取及时导致的问题 全局更新了一个包申请内存和释放内存的方式 全局更新了获取信息函数,完善了信息获取中的音视频信息 音频采集修正了销毁导致死锁的问题 流媒体组件 标准流模块 拉流类解决延迟过高的问题 文件推流解决延迟过高的问题 实时推流增加了新的编码数据推流功能 编码推流支持H264和AAC推流 编码推流支持单独的视频和音频推流 编码推流视频支持单独处理SPS和PPS信息或由系统处理 编码推流音频支持自动AAC的扩展属性信息 编码推流音视频支持系统自动处理音视频帧或者由用户处理(内部线程或者用户线程) 编码推流增加单独写信息头的函数 编码推流支持获取系统是否处理完音视频扩展信息的功能函数 编码推流支持多路推流 帮助组件 组包模块 删除了组包获取数据重置事件方式,解决多线程下的一些问题 标准组件 HTTP服务模块 删除了组包获取数据重置事件方式,解决多线程下的一些问题 Websocket模块 组包类增加分布池技术,能够完全应对多线程下使用 分布池支持按照需求创建指定客户端任务池 分布池可以通过自身池管理事件 组包类修改创建函数,现在可以指定分布池索引 组包类初始化可以由用户创建指定个数的分布池 组包类增加了获取指定分布池索引关联的客户端ID ====================================================================================== XEngine2020-6.24.0.1001 Build1117 客户端组件 客户端池模块-增加 连接池支持TCP和UDP 连接池支持IPV4和IPV6版本 连接池支持创建指定个数连接到服务器 连接池支持对指定池索引发送数据 连接池支持通过回调回去服务器返回的数据 流媒体组件 标准流模块 修改回调函数定义名称,解决冲突问题 文件推流现在支持音频和视频文件分开设置了 文件推流拆分了函数,输出输入启动函数被分割开了 文件推流音视频现在分开不同线程推流 文件推流输出函数增加设置输出流FPS值的的功能 文件推流现在都支持音视频解复用 文件推流修改推流时间计算模式不正常的问题 文件推流修正关闭指定调用顺序不正确可能导致异常退出的问题 编解码组件 音频编解码模块 编解码类支持G711A了 编解码类解码器修正裸流音频格式无法初始化解码的问题 编解码对编码器增加了重采样的支持,重采样方式进行重写 编解码类重采样现在会自动处理数据包,不需要按照规定大小投递了 编解码类编码初始化函数现在可以自定义采样大小了 编解码类编码初始化可以自定义通道个数了 编解码类编码器现在支持输入一帧的帧大小了 帮助类删除了重采样代码,现在集成到编解码中,方便使用 帮助类增加了组合AAC头协议的函数,组合的头为ADTS 标准组件 WEBSOCKET模块 组包器增加了设置和获取登录函数,方便用户判断客户端是否经过了验证 组包器修正当包的负载数据为0所造成的问题 网络组件 网络函数模块 HTTP增加了CHUNKED回调数据操作函数 HTTP删除了部分多余的代码 帮助组件 日志模块 日志类增加了设置允许打印日志类型的功能函数 日志类允许打印日志类型支持包含于日志级别下或者单独计算 核心组件 核心模块 IOCPTCP发送过程会正确识别客户端关闭消息 IOCPTCP发送数据修正极端情况下数据发送不完整的情况 内存回溯队列现在不在区分发送和接受队列,只是用一个队列 内存回溯队列修改初始化参数不足够导致的问题 内存回溯队列修改了内部队列缓冲池,对于多线程的支持更好了 内存回溯队列修正导出函数缺少的问题 内存回溯队列现在获取函数接受的序列号支持多种设置了 内存回溯队列支持设置缓冲队列满后是否增长了 ====================================================================================== XEngine2020-6.23.0.1001 Build0928 系统组件 系统函数模块 系统类修正获取系统版本对于8.1以上的系统获取不成功的问题,并且增加了获得的SP版本 标准组件 HTTP模块 服务类修正在多线程下无法重置事件导致一直有信号触发的问题 服务类修改获取可用数据客户列表函数,现在支持获取简易分布池任务列表了 更新组件 更新帮助模块 构建版本修正更新文件因为枚举文件问题导致出来的数据为空的问题 构建版本时间扩展到了小时,分钟,秒钟了.支持按照最小时间更新了 构建版本函数修正某些时候路径不准确的问题 构建版本扩大了内部内存大小 更新解析模块 匹配类修改了对于转换整数大小不足够的问题 帮助组件 组包模块 组包类修正在多线程下无法重置事件导致一直有信号触发的问题 组包类修改获取可用数据客户列表函数,现在支持获取简易分布池任务列表了 组包类修改了事件和锁操作部分不合理的代码 扩展组包修正在多线程下无法重置事件导致一直有信号触发的问题 扩展组包修改获取可用数据客户列表函数,现在支持获取简易分布池任务列表了 扩展组包修改了事件和锁操作部分不合理的代码 自定义组包类,新增加代码.支持用户创建自定义协议管理 自定义组包支持指定协议头和协议尾大小,支持设定协议后续数据大小 自定义组包支持创建和删除,清理指定客户端 自定义组包支持分布池模式获取任务队列 自定义组包支持简单分布任务池获取任务队列 自定义组包支持事件管理和多线程模式下运行 自定义组包支持设置队列大小 基础组件 基础模块 字符串类修正删除指定字符串崩溃的问题 字符串类增加了修复文件路径的功能,可以转换绝对和相对路径 核心组件 核心服务模块 心跳类增加了获取指定客户端是否存在的函数,并且支持导出在线时长 ====================================================================================== XEngine2020-6.22.0.1001 Build0914 帮助组件 XML模块已经被移除.集成的话问题过多,现在单独调用 组包模块 组包类增加分布池技术,能够完全应对多线程下使用 分布池支持按照需求创建指定客户端任务池 分布池可以通过自身池管理事件 组包类修改创建函数,现在可以指定分布池索引 组包类初始化可以由用户创建指定个数的分布池 组包类增加了获取指定分布池索引关联的客户端ID 扩展组包类修正获取所有数据函数在某些时候无法释放包造成的问题 扩展类增加分布池技术功能同组包类分布池 流媒体组件 RTP模块 打包类删除了无用的代码 标准组件 HTTP模块 HTTP服务类增加了扩展类,现在可以创建和管理多个HTTP服务端了 服务类增加分布池技术,能够完全应对多线程下使用 分布池支持按照需求创建指定客户端任务池 分布池可以通过自身池管理事件 服务类修改创建函数,现在可以指定分布池索引 服务类初始化可以由用户创建指定个数的分布池 服务类增加了获取指定分布池索引关联的客户端ID 服务类插入数据现在不在支持创建客户端了 服务类现在使用新函数来管理插入队列数据了 UPNP模块-重构(不在依赖三方库) 增加了客户端(控制节点)类操作 客户端类支持创建和管理多个设备端 客户端类支持搜索本地局域网中的UPNP设备 客户端类支持获取设备个数 客户端类支持获取设备信息 客户端类支持获取是否支持控制 客户端类支持获取外部IP地址 客户端类支持删除,获取,添加UPNP映射 后台管理模块 信息类删除了对发送电子邮件的支持 信息类现在可以直接获取硬件软件信息了 核心组件 核心服务模块 TCPIOCP现在支持设置服务限制功能函数.支持设置满足大小和匹配条件回调数据 TCPIOCP增加了获取服务限制信息的函数 ====================================================================================== XEngine2020-6.21.0.1001 Build0826 编解码组件 帮助模块 媒体类获取媒体信息结构进行了修改并且解决了获取音频数据不正确的问题 媒体类获取媒体信息内部不在处理ID3V2编码信息,解决无法获取其他媒体信息的问题 媒体类增加了单独的获取ID3V2编码信息长度的函数 媒体类修改了获取音频信息函数为获取AAC信息,现在对各种编码进行区分 视频编解码模块 编解码启用硬件参数现在支持选择更多硬件编解码器了 编码操作参数选项进行了统一操作 解码操作对于解析头函数修正了高分辨率帧数据解析不成功导致的问题 编码对硬件编码进行了修改,对硬件编码兼容性更好了 解复用模块 解包,组包,转换器进行了流程代码更新 现在初始化和启动,输入输出函数进行了分离 现在输入输出都可以通过内存或者文件进行读写了 现在都支持操作进度通知回调 现在都支持输入的媒体文件导出音视频长度功能了 现在通知回调不在删除媒体数据和大小 现在通知回调可以输出当前媒体处理时间节点了 解包类增加了解复用函数,现在可以对封装格式进行处理了 解包类增加了获得是否有音视频的功能 解包类现在可以由用户控制是否输出音频和视频了 流媒体组件 推拉流模块(XClient) 拉流和推流现在采用一个回调函数处理了 拉流端获取流信息的时候增加了获取封装格式的字段 拉流端修改了回调获取的时候现在只返回一个流了 拉流端现在内部不在处理解复用,返回的数据格式将会是原始格式 HLS模块 切片类修改了启动流程代码,现在分开步骤进行.初始化,输入,输出,启动 切片类修正在没有音频流的时候切片时间格式计算不准确的问题 标准组件 HTTP模块 服务类增加了创建客户端函数,对于一些长连接优化性能 服务类修正某些时候返回空数据包的问题 服务类修正删除客户端的时候没有对数据包重新计算的问题 服务类修改了关闭销毁处理函数,现在对于锁的使用和释放问题得到解决 服务类修改组包流程代码,现在组包过程代码处理更加完善 服务类修改插入数据处理函数,现在对于一些弱环境也能正常处理数据了 网络组件 网络函数模块 HTTP请求修正当有自定义头字段的时候崩溃问题 网络类修正获取内网地址的时候没有释放内存的问题 ====================================================================================== XEngine2020-6.20.0.1001 Build0818 全局更新 修改部分模块支持静态库编译 服务组件 验证服务 修正没有对网络库初始化和反初始化的问题 编解码组件 打包模块 打包类启动函数重构,现在支持内存读数据了 打包类删除了设置回调的函数 打包类修改了数据输出回调方式.解决媒体写入数据不正确的问题 媒体组件 HLS协议模块-新增 HLS文件增加了M3U8文件处理打包的支持 HLS文件支持主流和子流创建并且支持子流添加和流 HLS文件支持按照时间和列表个数设置文件 HLS文件支持直播和录像流设置 HLS文件支持自动清理过期的文件和文件列表 HLS切片支持音视频流合并,支持文件和内存读取数据 HLS切片支持按照时间大小来切片 HLS切片支持文件创建通知回调 HLS切片支持获取状态和次数 网络组件 网络函数模块 HTTP类修正使用了自定义头导致内存泄露的问题 HTTP类修正在请求出错的时候资源未关闭的问题 帮助组件 组包模块 标准类修正销毁的时候设置激活参数无效的问题 扩展类修正销毁的时候设置激活参数无效的问题 核心组件 核心服务模块 TCPIOCP现在支持统计并且获取平均流量信息了 TCPIOCP优化了内部成员数据结构成员定义方式 UDPIOCP现在支持统计平均流量信息了 UDPIOCP优化了内部成员数据结构和使用方式 基础组件 基础模块 字符串删除指定字符串函数代码重构,优化和解决部分问题 字符串修改字符串指定位置内容函数修正END位置处理不正确导致的问题 ====================================================================================== XEngine2020-6.19.0.1001 Build0731 其他更新 协议头的媒体协议进行更新,增加了媒体同步时间戳字段 客户端组件 客户端模块 TCPOVERLAPPED已经删除 UDPSELECT删除了接受数据的多余函数,功能集成到一起了 UDPSELECT现在支持获取流量信息了 UDPSELECT发送数据现在不在处理大数据情况,上层用户需要自己分包 UDPSELECT现在对于多线程进行了支持 TCPSELECTEX连接的时候可以设置超时时间了 TCPSELECTEX增加了流量信息统计的功能和函数 TCPSELECTEX接受数据的时候对超时的代码进行了优化 TCPSELECTEX在销毁资源的优化了代码,现在不需要处理错误信息了 帮助组件 组包模块 组包类现在内部每个客户端的待处理包个数都会记录了 组包类增加了新的函数,可以获取待处理的数据客户列表 扩展组包类现在内部每个客户端的待处理包个数都会记录了 扩展组包类增加了新的函数,可以获取待处理的数据客户列表 日志模块 修正日志模块打印级别无效的问题 标准组件 SDP模块 打包类视频属性支持H265媒体信息打包了 解包类获取视频信息的时候支持获取H265的信息了 HTTP模块 服务类增加了新的函数,可以获取待处理的数据客户列表 媒体组件 删除了RTSP和RTMP客户端模块,现在集成到StreamMedia_XClient中了 RTP模块 打包类内部增加成员变量,用于区分RTP负载类型和处理类型 打包类增加了对H265的打包支持,支持单个NAL和分片 解包类增加了对H265的打包支持,支持单个NAL和分片 XStream模块 推流端现在能够正常处理暂停和播放请求了 推流端现在推送头请求包含了媒体协议 推流端现在增加了推送状态协议的函数功能 拉流端推送状态函数现在系统会处理时间戳和接受数据大小字段了 客户端模块-增加 集成了RTSP和RTMP客户端模块现有功能,优化了一些代码 拉流类现在支持HTTP流了 拉流类删除了写文件的支持,现在需要用户自己处理保存文件了 拉流类增加了音频流支持,现在可以获取音频流数据了 拉流类增加了获取拉流状态和拉流音视频信息的函数 拉流类回调函数进行参数扩展,现在返回的数据能够区分音视频流和拉流次数了 编解码组件 帮助模块 媒体信息修改了AVHelp_MetaInfo_GetSPSPPS函数名称为AVHelp_MetaInfo_Get264Hdr 媒体信息修改了264信息头长度参数为NULL导致的问题 媒体信息增加了解析265格式信息头的函数,支持VPS,PPS,SPS信息获取 媒体信息增加了解析265参数集信息的函数,可用于SDP信息提供 打包模块 文件解码类已经被删除,现在功能集成到转换器中 统一了导出的回调函数数据流类型 文件打包现在支持单个音频或者视频打包了 文件解包现在支持只输出音频或者视频了 文件解包现在也能够导出数据了,可以不在输出到文件 文件转换现在增加了SEEK文件的功能函数 文件转换现在支持输出数据到内存了,可以不在输出到文件 基础组件 基础模块 字符串获取文件名和路径函数现在支持只有文件名的情况 ====================================================================================== XEngine2020-6.18.0.1001 Build0723 客户端组件 客户端模块 删除了TCPSelect和TCPSelectEx以及UDPSelect的IO轮训函数 删除了TCPSelect和TCPSelectEx的设置IO阻塞模式的函数 增加了新的套接字操作类,支持操作IO轮训和阻塞模式 TCPSELECTEX删除了关闭资源线程代码 TCPSELECTEX删除了NAGLE算法启用代码 TCPSELECTEX优化了锁的使用,对多线程支持更好了 TCPSELECTEX是否连接函数模式判断能够正确处理了 标准组件 websocket模块 加解密已经被代码文件已经被删除,现在集成到连接器中 连接器现在只需要调用一次函数就可以计算得到返回给客户端的数据而建立连接了 连接器增加了客户端连接打包函数,现在支持客户端操作了 连接器增加了验证函数,用于验证服务器返回的数据是否正确 编解码类删除了带掩码打包数据的函数和PING PONG函数,现在集成到编码函数中了 编解码类删除了协议数据结构体,不在需要输入输出此参数了 组包类增加,现在可以通过组包函数来处理WEBSOCKET数据了 多媒体组件 RTMP客户端 文件推流现在支持从内存读取数据了 文件推流现在支持音频推流了 文件推流获取状态现在支持获取音视频推送帧个数了 实时推流初始化函数进行修改,现在支持推流音频了 实时推流内部代码优化,对于音视频推流代码进行区分 实时流关闭优化,现在没有错误信息了 RTSP客户端 文件推流现在支持从内存读取数据了 文件推流现在支持音频推流了 文件推流获取状态现在支持获取音视频推送帧个数了 实时推流初始化函数进行修改,现在支持推流音频了 实时推流内部代码优化,对于音视频推流代码进行区分 实时流关闭优化,现在没有错误信息了 音视频组件 视频编解码模块 编解码器删除了视频编码获取SPS,PPS的函数,与AVHelp中的代码冲突了 编解码编码初始化增加了可变码率配置参数,码率现在支持可变VBR和平均码率ABR 编解码的编码器现在支持设置B帧间隔和关闭了 编解码优化了部分参数,设置画质为主流,修改内存对其的值 音频编解码模块 编解码编码初始化增加了可变码率配置参数,码率现在支持可变VBR和平均码率ABR 核心组件 核心服务模块 套接字操作修正IOSELECT超时时间不准确的问题 TCPIOCP现在用户主动关闭的客户端不在会进行回调请求了 TCPIOCP修正接受的数据缓没有初始化导致有多余数据的问题 UDPSELECT内部函数修改创建方式,现在全部使用XHANDLE句柄了,解决一些问题 基础组件 基础模块 句柄类增加了获取指定位数随机字符串的函数 ====================================================================================== XEngine2020-6.17.0.1001 Build0714 其他更新 协议头 协议头增加了修改了流媒体推送协议.增加了拉流协议和播放以及暂停协议 协议头增加了推流控制协议数据结构定义 应用服务 流媒体服务 流媒体服务请求PLAY的时候获取RTP时间现在采用RTP包本身时间,解决时间戳不正确照成的问题 流媒体SDP创建修改,修正不支持实时推流的问题,修改导出参数 流媒体服务客户端属性增加了部分字段 流媒体修正RTP包句柄不匹配导致的实时推流问题 推流端接受数据流程代码进行优化 标准组件 SDP模块 打包类设置会话信息的时候现在能够指定是音频还是视频了 打包类设置音频属性简化输入内容,降低开发难度 打包类优化导出数据结构解释和删除无用的字段 解析类修改了会话函数,现在可以分别取得会话名称和会话是音频还是视频了 流媒体组件 RTP模块 帮助类获取RTP时间戳现在不需要负载类型了,现在直接使用采样率 组包类增加了AAC的支持,现在支持解析AAC音频的ADTS格式数据 组包类设置模式现在可以设置负载类型了 组包类增加了设置音视频信息的函数,支持设置采样率,帧率,采样大小了 组包类增加了获取RTP时间计算的函数,每次调用就会计算一次 解析类修正由于组包完成判断错误导致UDP无法正常使用的问题 解析类接受导出函数现在对头导出的数据进行了删减 解析类现在对AAC打包的数据进行了解析支持 RTSP客户端模块 删除了XPUSH类功能,现在由新的X流媒体模块集成 修正错误码重复定义问题 RTCP模块 修正错误码重复定义问题 XStream流模块 客户端推流类现在支持自定义ID推流了 客户端推流现在支持服务器状态通知协议处理了 客户端推流增加了导出函数,可以通过服务器负载来返回用户推流速度 客户端拉流功能增加了,支持创建多个拉流客户端 客户端拉流支持获取指定流是否存在 客户端拉流支持推送自身处理数据状态能力用于服务器判断推流速度 客户端拉流支持播放和暂停操作 编解码组件 音视频帮助模块 媒体类增加了获取AAC音频相关信息函数 设备类修正设备列表函数可能出现崩溃的问题 核心组件 核心服务模块 套接字类修正BIND的时候对于IPV6协议处理不正确的问题 TCPIOCP现在支持对每个客户端进行流量统计了,支持发送和接受数据大小以及次数 TCPIOCP针对总流量统计进行了优化,增加了接受发送次数统计功能 TCPIOCP获取接受最后时间差函数名称修改,现在支持获取最后接受和发送间隔时间了 TCPIOCP删除了发送所有数据给客户端的函数,因为现在支持多模式发送,此方式不在支持 UDPIOCP现在支持获取数据发送和接受次数统计了 UDPIOCP修正POST发送接受统计信息错误的问题 UDPIOCP修正投递数据发送IPV6没有对错误进行处理的问题 UDPIOCP增加了新的函数,支持导出最后接受和发送时间 ====================================================================================== XEngine2020-6.16.0.1001 Build0703 应用服务 流媒体服务 流媒体服务现在RTP协议负载支持TCP UDP请求自适应了 修正客户端退出的时候服务器可能造成的乱码崩溃问题 服务器更新部分函数使用方式,适配最新函数 标准组件 SDP模块 打包类添加媒体信息现在不能够指定传输协议类型了 解析类媒体解析函数现在不能够导出传输协议类型了 流媒体组件 RTP模块 组包类获取发送者报告函数修改,现在返回统计信息了,解决对RTCP模块的依赖 组包类初始化函数修改,现在支持TCP模式打包数据了 组包类增加了设置组包模式的函数,支持设置TCP,UDP 组包类打包RTP协议函数现在对FU-A打包模式进行代码优化,减少部分代码 解包类修改初始化函数,现在支持TCP模式了 解包类增加了解包模式的函数,支持设置TCP,UDP 解包类获取统计信息增加了获取RTP最后包时间的参数,并且修改参数类型 解包类增加了TCP组包支持,支持处理沾包问题 解包类获取包解决开始标志问题导致获取数据不成功的问题 解包类解决对没有组包完成的情况获取数据有误的问题 解包类获取函数现在导出函数将直接导出完成NAL单元,不在导出分片的数据了 解包类获取函数现在导出的数据将带开始字节码了 解包类获取函数现在导出的数据将自动对其进行NAL类型还原 解包类删除了检查数据包正确性内部函数 解包类导出的RTP协议现在导出了TCP模式的通道号了并且修改了负载类型为0的情况 RTSP模块 整体结构修改,现在区分服务器和客户端协议了 服务帮助类修改了解析传输信息函数参数,导出的协议类型现在为整数型了 服务打包类函数减少了参数合并了部分类型,现在支持TCP和UDP双模式了 服务打包类SETUP不在提供单播组播模式选择,默认都是单播 服务打包类PLAY函数修正导出的RTP时间会多一个字符的问题 服务解析类函数修正某些时候解析数据不成功的问题 服务帮助类现在传输帮助解析不在导出传输模式了 客户端协议增加支持打包和解析 客户端打包类支持Option,Describe,Setup,Play,Pasue,Teardown,Parament类型协议打包 客户端打包类支持自定义TCP和UDP协议 客户端支持请求Basic基本认证模式 客户端解析类支持解析Option,Describe,Setup,Play,Pasue,Teardown,Parament类型协议 客户端解析类能够正确处理负载的附加内容 ====================================================================================== XEngine2020-6.15.0.1001 Build0628 其他更新 XRPC模块包事件触发流程更新到最新版本 P2XP客户端模块包事件触发流程更新到最新版本 存储服务,验证服务,消息队列更新模块包事件触发流程到最新版本 应用服务 流媒体服务 RTSP SETUP协议处理更新了端口名称变量 修改了发送RTP和RTCP的间隔时间,并且RTCP可以发送数据了 帮助组件 组包模块 标准组包类优化事件处理方法,现在不需要初始化和创建线程了 标准组包类增加了手动激活事件函数 标准组包类销毁函数现在支持销毁时激活事件,防止部分程序退出处理问题 扩展组包类优化事件处理方法,现在不需要初始化和创建线程了 扩展组包类增加了手动激活事件函数 扩展组包类销毁函数现在支持销毁时激活事件,防止部分程序退出处理问题 日志模块 日志类现在初始化的时候能够获取文件名了 日志类删除了写文件的时候多余的判断代码 日志类写文件对于文件名备份流程修改 日志类删除了自动创建文件夹的功能,解除了对SystemApi模块的依赖 帮助类增加了现在可以获取备份文件名了,支持顺序备份文件和日期备份文件 帮助类增加备份文件到指定位置的功能.此函数不会删除文件并且按照日期文件备份 标准组件 HTTP模块 服务协议类优化事件处理方法,现在不需要初始化和创建线程了 服务协议类增加了手动激活事件函数 服务协议类销毁函数现在支持销毁时激活事件,防止部分程序退出处理问题 流媒体组件 RTSP协议模块 打包类修改PLAY的RTP时间参数类型,解决某些时候为负数的问题 导出头的SETUP结构客户端和服务器端口类型定义修改名称,解决歧义 RTP模块 组包类修正在1080P下缓冲区不足造成的崩溃问题 组包类修正推送RTP数据由于数据缓存问题照成视频播放不流畅的问题 基础组件 基础模块 事件类创建的时候可以设置事件触发模式是手动还是自动了 事件类增加了重置事件的函数用于自动模式 字符串类获取文件路径和文件名函数现在文件路径参数可以为NULL了 ====================================================================================== XEngine2020-6.14.0.1001 Build0614 其他更新 协议头 存储协议修改了文件查询请求协议定义 存储协议增加了用户信息查询请求协议 应用服务 存储服务 存储服务支持处理用户信息查询请求了 存储服务修正存储协议打印的日志用户名和用户IP相反的问题 存储服务修正登录请求没有P2XP信息导致的问题 存储服务对于查询用户请求现在支持权限验证来返回信息 帮助组件 数据库模块 MYSQL修正在某些时候调用查询函数崩溃的问题 MYSQL调整内存申请流程 存储组件 存储核心模块 管理器增加了通过数据库表名获取所有数据文件的函数 管理器现在支持设置数据保留天数了 管理器用户操作增加了用户文件个数和文件大小统计了 管理器用户操作增加了电子邮件,身份证编号,联系电话字段操作 存储协议模块 公用类客户端解析函数支持对服务器返回处理结果进行判断了 客户类修改文件查询函数名称,防止歧义 客户类增加了查询用户信息请求封装函数,支持请求关键信息和非关键信息 服务类增加了解析客户端用户信息查询函数 服务类增加了打包返回用户信息函数的功能,支持打包关键信息和非关键信息 流媒体组件 RTSP模块 解析类解析函数修正在某些情况下SEQ解析不出来的问题 解析类URI解析函数修正某些时候track解析不正确的问题 标准组件 SDP模块 组包类修正在获取包track位置不对引起的问题 核心组件 池管理器模块 线程池修正等待任务的时候可能引起的崩溃问题 基础组件 基础模块 事件类增加了信号量事件操作.创建,删除,激活,等待,将用于队列事件 ====================================================================================== XEngine2020-6.13.0.1001 Build0611 网络组件 测试模块 修改ARP测试发送代码调用函数,适配最新函数,修改关闭套接字所使用的函数 核心组件 核心服务模块 RAWARP修改了使用方式,ARP采用打包和解析函数来处理ARP协议 RAWARP打包函数现在可以自定义协议类型了 RAWARP修改网络转换造成的问题 RAWARP增加了解析函数可以解析相关信息了 RAWTCP内部函数已经被重构,现在支持更多TCP协议处理了 RAWTCP支持解析了,解析的函数现在可以返回差错包和专用TCP协议数据了 RAWUDP内部函数已经被重构,现在支持更多UDP协议处理了 RAWUDP支持解析了,解析的函数现在可以返回差错包和专用UDP协议数据了 RAWICMP内部函数已经被重构,现在支持更多ICMP协议处理了 RAWICMP支持解析了,ICMP协议解析支持返回ICMP相关信息 RAW类删除了TCP,UDP,ICMP打包函数,现在由自身的代码集成 套接字帮助获取网卡信息列表修正一处释放内存错误,增加了导出MAC地址的功能 增加了套接字操作导出函数类,支持设置非阻塞,地址重用,超时,心跳,快速启动,SELECT 协议模块 标准协议头修改了协议和类型定义,采用与LINUX一样的定义方式 ICMP实现了PING协议支持自定义IP地址,并且可以返回操作时间了 ICMP实现了TRACE协议,现在支持自定义发送和目标地址 TRACE的回调函数修改,现在可以返回发送地址,目标地址和数据发送地址了 TRACE的回调函数修改,现在支持返回每个节点和时间了 TRACE的回调函数现在支持自定义退出循环了 网络函数模块 网络探测工具修改类型定义名称适配最新版本 网络探测修测地址内存大小,解决可能的崩溃问题 网络探测修改了启动函数接口,现在不在需求发送的IP和MAC,将在内部自动获取 网络探测修改了启动内部流程函数,解决可能会丢失数据的问题 网络探测修正ARP打包函数内部地址错误的问题 网络探测修正获取数据包的时候验证ARP回复错误的问题 网络抓包删除了格式化函数 网络抓包修正获取网卡列表信息不崩溃的问题 网络抓包修改信息结构,现在只导出协议大小和后续数据包大小了 网络抓包修改TCP标识符导出方式,现在直接导出,不做处理了 网络地址IP转地址信息删除了IP2转换函数,不在需要 网络地址优化了错误信息导出 网络地址删除了一些不用的初始化代码和定义,并且删除了两个转换函数,不在需要 ====================================================================================== XEngine2020-6.12.0.1001 Build0519 其他更新 协议头UDX协议CODE值修改 协议头增加了XRPC远程函数调用协议 网络组件 XRPC模块-增加 客户端支持创建关闭多个XRPC连接器,仅TCP标准服务器 客户端支持主动获取返回内容和被动获取返回内容模式 客户端支持远程函数调用请求 支持设置要调用的函数名称 支持添加多个参数并且设置参数类型 支持获取调用函数返回结果 服务类支持创建和销毁HTTP协议和TCP标准协议的RPC服务器 服务类支持通过回调函数触发客户端调用函数请求,并且支持返回客户消息类型 服务类支持为指定客户端发送调用结果的函数 服务类内部自动管理客户端连接和关闭请求 服务类集成了TCPIOCP模块和线程池模块,自动管理性能和SOCKET连接 服务类返回的数据将会是完整的包,上层调用者不需要再次组包 帮助类增加了支持一键初始化申请参数内存的函数 帮助类增加了一键释放参数内存的函数,方便用户使用 协议类服务协议增加支持解析客户端调用函数请求的方法 协议类服务协议增加了返回客户处理结果的打包函数 协议类客户协议增加了打包函数调用协议的方法 协议类客户协议增加了服务器返回调用结果解析的方法函数 标准组件 HTTP服务模块 帮助类分割URL函数修改了获取方式,现在分割的是URI了,不在分割请求头 帮助类分割URL函数现在支持只获取HTTP地址分割后面的数据了 服务类修正导出请求头不完整的问题 服务类优化插入客户端列表的时候使用方式 服务类修正插入客户端数据发生死锁的问题 服务类现在使用了新版本的事件管理器 帮助组件 组包模块 扩展组包现在使用了新版本的事件管理器 客户端组件 客户端模块 UDX客户端协议更正为新版本协议 UDX客户端现在登录协议使用验证协议的登录协议,删除了UDX登录协议 UDX客户端现在登录成功后能够正常取得服务器滑动窗口大小了 核心组件 核心服务模块 UDX服务协议更正为新版本协议 UDX服务现在登录协议使用验证协议的登录协议,删除了UDX登录协议 UDX服务当客户登录的时候会立即返回服务器窗口大小了 TCPIOCP增加了新的发送函数,通过IOCP投递发送,性能更好 TCPIOCP完成端口通知处理修改了接受处理函数代码,并且可以处理IOWRITE事件了 UDPIOCP增加了新的发送函数,通过IOCP投递发送,性能更好 UDPIOCP完成端口通知处理修改了接受处理函数代码,并且可以处理IOWRITE事件了 池管理器 线程池现在使用了新的基础库事件管理器函数了 基础组件 基础模块 事件类代码已经重写,现在采用采用返回指针内存方式管理多个事件而不是内部句柄方式 事件类现在内部已经不需要锁而支持多线程了 ====================================================================================== XEngine2020-6.11.0.1001 Build0509 其他更新 协议更新了DDS关于域和主题相关协议释义错误的问题 协议更新了扩展协议头,增加了时间戳字段 协议删除了P2XP专属协议结构,不在使用 协议修改了P2XP协议名称,统一命名规范 服务程序 流媒体服务器 优化流媒体服务器发送RTP包代码 存储服务器 配置项增加了QQWRY地址库路径配置 登录协议现在兼容P2XP和存储服务登录协议 服务器现在支持P2XP节点管理 增加了P2XP服务所属协议功能,包括列表同步,用户查询,请求连接 客户端组件 客户端模块 UDX修正在某些时候协议冲突导致登录失败的问题 P2XP组件 P2XP客户端组件 通信类回调函数删除了返回P2XP专属协议的参数 P2XP节点模块 节点模块修改了相关协议类型错误 P2XP协议模块 系统协议相关函数代码已经被删除,暂时不需要,后面重新设计 用户和服务协议修改不在需要P2XP专属协议和使用TTL和TIMESTAMP 用户登录协议修改登录协议内容 帮助组件 组包模块 帮助类扩展组包头增加了设置XTP时间戳字段的功能 组包类修改计算包超时方法,现在使用协议头时间戳计算了 组包类包超时删除现在必须设置并且包有时间戳才支持自动删除了 网络组件 网络帮助模块 网络类获取IP地址函数现在会过滤169开头的保留地址了 流媒体组件 RTP模块 组包类修改导出NAL单元包计算长度的方式 解析类解析包函数修正时间戳和SSRC转换错误导致的问题 解析类解析包函修改对于包类型判断不正确的问题 解析类解析包函修修正解析NAL和FUA头不正确的问题 解析类解析包修正检查包序列号检查不正确的问题 解析类输出包函数修正单一包类型判断不正确的问题 帮助类获取RTP时间戳增加了对自定义帧率处理的功能 消息组件 消息分发模块 公用类修正创建域的时候对已经存在的域处理错误的问题 公用类修正查询域永远无法接受到其他域信息的问题 公用类修正查询域没有关闭网络资源的问题 公用类修正申请地址只能申请两个的问题 公用类修正请求主题查询可能无法接受数据的问题 公用类修正请求主题查询没有释放网络资源的问题 公用类修正主题删除通知无效的问题 标准组件 UPNP模块 初始化函数对于没有找到的UPNP设备将返回错误了 现在不在打印内部请求信息并且修改设备链表使用方式 基础组件 基础模块 时间类结构毫秒修正释义错误,应该是微妙,修改其变量类型 时间类增加了夏令时和阴历闰年标识 时间类增加了获取指定日期转到阴历日期的函数 时间类增加了获取当前XTP时间格式的函数 时间类增加通过指定XTP时间转换为当前系统时间的函数 时间类WINDOWS版本的gettimeofday现在微秒获取的位数与linux下一样了 ====================================================================================== XEngine2020-6.10.0.1001 Build0427 服务组件 验证服务器 现在登录结果将返回正确的错误码了 现在用户通知回调客户端后会立即关闭对方网络连接 存储服务器 存储服务器返回的文件夹路径现在采用统一路径斜杠 存储服务器现在上传文件不在需要在带用户名了 存储服务器现在客户端上传下载请求发送后会正确响应了 存储服务器现在对上传的文件会自动计算MD5值了 存储服务器在上传文件的是否会检查是否有文件存在了 流媒体服务器 修正对于推流服务多余的协议验证和不正确的问题 修正对于推流端返回数据的时候没有正确选择客户端的问题 修正客户端退出后会引起乱码的问题 修正由于SDP填充类型错误导致无法播放的问题 流媒体组件 RTP模块 打包类修改可发送大小 帮助类获取RTP时间戳修改计算方式 RTCP模块 发送者修正协议发送数据大小与实际大小不一致的问题 发送者组包函数现在每个包都有包尾了 接受者组包函数现在每个包都有包尾了 存储组件 存储核心模块 数据管理类增加了用户临时会话句柄保存功能 数据管理类用户查询可以查询用户的临时会话句柄了 数据管理类用户设置现在可以设置用户会话句柄了 数据管理类用户查询现在单独导出错误码了 数据管理类增加可以通过TOKEN来查询用户信息的函数 数据管理类修正删除协议无法删除文件的问题 客户端组件 客户端模块 UDP修正客户端绑定无法处理IP协议版本的问题 UDP修正无法重复绑定端口的问题 帮助组件 日志模块 修正文件日志输出的数据有多余的换行符 组包模块 文件类增加了解析头函数,支持组包和导出协议头 文件类创建文件函数现在支持判断是否需要组包协议头了 文件类创建文件函数支持检查文件是否存在了 标准组件 邮件模块 修改SSL版本选项,现在采用默认值 SDP协议模块 组包会话函数增加了会话名称扩展信息 组包视频属性函数修正解析视频属性信息有误的问题 解析会话函数增加了解析扩展信息的功能 验证组件 序列号模块 增加了获取剩余序列号个数的函数 增加了扩展函数,现在可以创建多个序列号模型了 修正获取序列号类型失败的问题 验证服务模块 网络类用户超时后会自动移除客户端信息了 网络类用户超时回调函数增加返回了用户地址信息 核心组件 核心服务模块 IOCPTCP修正接受连接函数客户端地址不正确导致的问题 基础组件 基础模块 时间类结构删除了一个多余的成员,当月的几号 时间类获取GMT时间修正在星期天的时候会引起崩溃的问题 ====================================================================================== XEngine2020RC-6.2.0.1001 Build0409 音视频组件 播放模块 视频播放优化代码对于多线程的支持 视频播放现在支持压入队列播放和支持播放了 视频播放现在支持播放速度控制了 音频播放优化代码对于多线程的支持 音频播放现在支持播放速度控制了 标准组件 NAT模块 重新了内核,精简代码 现在可以导出映射地址,源地址,改变地址了 现在可以导出服务器要求的用户和密码了 现在支持导出服务器版本信息了 现在支持导出创建的TOKEN信息了 现在支持导出服务器返回的状态码了 客户端组件 客户端模块 UDX初始化现在能够超时处理了 UDX发送数据优化发送数据流,现在速度更快了 UDX滑动窗口通知优化了通知代码逻辑,现在通过固定时间和滑动窗口大小来进行通知了 UDX优化序列号确认通知,将根据时间和序列号节点来确认是否通知了 核心组件 核心服务器模块 UDPIOCP修正接受的客户端连接地址不正确的问题 UDPIOCP修正发送数据失败的问题 UDPIOCP修正当完成端口发生错误,无法继续接受数据的问题 TCPIOCP发送数据修正某些时候乱序的问题 TCP重叠IO修正客户端队列没有正常插入导致的问题 TCP重叠IO线程选择器优化了选择代码 TCP重叠IO修正了退出的时候没有对列表进行资源释放导致的问题 TCP重叠IO删除了IO处理线程,节约资源,继承到接受线程里面 TCP重叠IO修正线程退出代码无法正确执行并且崩溃的问题 TCP重叠IO增加了关闭线程的线程函数 TCP重叠IO增加了线程安全锁 TCP重叠IO修改了发送代码流程,不在使用重叠IO模式 TCP重叠IO修改关闭客户端代码,简化错误,现在可以关闭所有客户端了 TCP重叠IO现在能够正确导出设置数量函数和获取流量函数了 TCP重叠IO接受处理线程现在能够正确处理多事件的同步触发的消息了 TCP重叠IO发送数据不会再阻塞其他客户端了 TCP重叠IO修改流量发送接受获取函数导出参数,现在使用ULONGLONG了 UDX修正滑动窗口通知无效的问题 UDX发送数据优化发送数据流,现在速度更快了 UDX优化序列号确认通知,将根据时间和序列号节点来确认是否通知了 UDX滑动窗口通知优化了通知代码逻辑,现在通过固定时间和滑动窗口大小来进行通知了 组播修正接受数据的地址不正确的问题 消息组件 消息分发模块 公用函数创建发布者函数修改没有填写域名ID就通知的问题 网络组件 UPNP模块 已经被移动到协议组件下 Rfc标准组件 SIP协议模块 修改了SIP模块生成名称与头文件名称,更加容易识别 修改了导出函数获取错误码的函数名称 SNMP协议模块 修改了SNMP协议模块名称和导出头文件名称,更加容易识别区分 修改了SNMP导出头文件里面的字符类型定义为ANSI版本 修改了SNMP导出函数获取错误码的函数名称 UPNP协议模块 修改了UPNP导出的模块名称 修改了UPNP导出的函数名和错误码名称,规范命名方式 修改了UPNP获取映射列表函数,现在使用LIST容器导出而不是回调函数 删除了UPNP扩展映射列表获取函数,重复的函数 基础组件 基础模块 字符串类分割IP函数修正导出的字符串可能后续有乱码的情况 ====================================================================================== XEngine2020BT-6.1.0.1001 Build0120 客户端组件 客户端模块 TCPOVERLAPPED现在支持IPV6连接了 TCPSELECT简化函数集和扩展函数集现在支持IPV6连接了 UDPSELECT函数集现在支持IPV6协议了 UDX通信协议现在支持IPV6了 核心组件 核心服务模块 套接字类创建和绑定函数现在支持IPV6版本了 套接字类心跳函数设置现在支持取消设置心跳了 TCPIOCP现在支持IPV6版本了 TCPIOCP对于连接和转换函数现在采用新版本函数进行地址转换字符串了 TCPIOCP修正最大连接数设置不生效的问题 TCPOVERLAPPED现在支持IPV6版本了 TCPOVERLAPPED对于最大连接数不在使用离开事件触发了 TCPOVERLAPPED修改了连接回调函数,增加了新的参数,用于表示是否成功 TCPOVERLAPPED修改创建套接字流程,现在使用标准流程 TCPOVERLAPPED修正超过最大连接数关闭的客户端没有释放资源的问题 TCPSELECT和简单TCPSELECT模型现在支持IPV6协议了 TCPSELECT接受连接线程对一些安全性进行了优化检查 TCPSELECT删除了转换地址和获取本地地址信息函数 UDPIOCP现在支持IPV6协议了 UDPIOCP接受数据函数修正接受数据不正确和地址不正确的问题 UDPSELECT现在支持IPV6协议了 UDPSELECT创建套接字流程现在使用统一流程代码了 UDX通信协议现在支持IPV6了 组播类现在支持IPV6协议了 组播类接受数据函数现在支持导出发送者地址了 黑白名单模块 修正错误码导出的值有重复值的问题 IPV4通配符过滤器修正无法过滤0的IP地址情况 IPV4判断是否黑名单的时候修正不支持bTail标志位的问题 IPV4判断是否黑名单的时候修正有通配符判断不正确的问题 增加了IPV6版本支持.IPV6功能同步IPV4版本 基础组件 基础模块 字符串类修改分割IP端口函数,现在支持IPV6了 字符串类删除了itot函数,没有意义,WINDOWS平台自带 字符串IP地址解析函数重写代码,现在支持IPV4和IPV6协议了 字符串IP地址解析支持IPV6压缩解析,并且现在支持标识IP版本 字符串IP地址解析函数现在支持IPV6通配符解析 ====================================================================================== XEngine2020PT-6.0.0.1001 Build0110 全局更新 现在正式从名称血与荣誉网络通信引擎修改成XEngine 更新了编译器到最新的VS2019版本 更新了所有依赖的开源库为最新版本 优化代码内部输出字符串一些可能造成缓冲区溢出的地方 删除了libpcap库从发布文件夹中,现在请参考官方论坛的帮助进行安装配置支持NetXApi.dll 帮助组件 数据库模块 PGSQL现在集成到一起发布了,依赖库不在需要单独下载 MONGODB更新了查找函数,现在使用新版本函数了 MONGODB修改了BSON,JSON查找数据函数,删除了部分参数 验证组件 验证服务模块 网络类登录解析对于时间判断不符合逻辑问题修改 消息组件 消息分发模块 修改JSON处理格式语法,现在返回到旧版 更新组件 文件解析模块 修改JSON处理格式语法,现在返回到旧版 帮助模块 修改JSON处理格式语法,现在返回到旧版 客户端组件 客户端安全模块 安全通信类修改了初始化的时候加密协议相关过期函数 核心组件 核心服务模块 TCPSELECT优化对于读取事件的客户地址为空判断规则 安全模块 API类修改了与RSA和DIGEST相关过期的函数 证书类修改了与RSA相关的过期函数 服务类修改了初始化的时候加密协议相关过期函数 基础组件 基础模块 修正基础模块头文件加载问题 ====================================================================================== 血与荣誉网络通信引擎2019-5.28.0.1001 Build1226 其他更新 服务模块安装脚本更新,解决部分问题 存储服务 修正没有提供SQL文件的问题 媒体服务 修正无法启动的问题 修改代码,适配新的模块版本函数 标准组件 SDP协议模块 增加了组包和解析的支持 SDP组包器支持创建和删除多个SDP会话协议 SDP组包器支持获取SDP协议完成缓冲区和大小 SDP组包器支持设置源信息 SDP组包器支持设置会话信息 SDP组包器支持设置保持时间 SDP组包器支持添加媒体信息 SDP组包器支持对音频媒体和视频媒体单独添加多个信息 SDP组包器支持可选媒体名称设置 SDP组包器支持可选联系方式设置 SDP组包器支持可选带宽设置 SDP组包器支持可选视频位置设置 SDP组包器支持用户添加自定义属性 SDP解析器支持创建和删除多个SDP会话协议 SDP解析器支持获取版本号 SDP解析器支持获取源描述协议 SDP解析器支持获取连接信息 SDP解析器支持获取会话名称 SDP解析器支持获取时间信息 SDP解析器支持获取音频和视频媒体信息列表 SDP解析器支持获取可选媒体名称 SDP解析器支持获取联系方式 SDP解析器支持获取带宽信息 SDP解析器支持获取其他可选属性列表 流媒体组件 RTSP协议模块 删除了SDP组包函数,请使用SDP模块代替 基础组件 基础模块 删除了GetStartChar函数,重复的功能函数 修改了GetEndChar函数解释,解决歧义 修正了FromCharGetKeyValue在后续空行分割的时候分割不正确的问题 ====================================================================================== 血与荣誉网络通信引擎2019-5.27.0.1001 Build1218 架构更新 HTTP模块已经从NETHELP组件移动到RFC组件目录下 标准组件 SIP协议模块 SIP协议类打包请求函数现在支持对于一个未完成的流不会生成新的句柄值了 SIP协议类打包响应函数修正对于呼叫请求错误的TAG填充 SIP协议类支持解析ACCEPT可接受类型协议字段了 SIP协议类支持请求和回复打包函数打包ACCEPT类型了 SIP协议类支持VIA多节点解析封包了 SIP客户端现在支持呼叫请求协议的打包和处理了 SIP客户端现在支持获取当前客户端处理状态了 SIP客户端处理函数现在支持处理请求和响应了 SIP客户端现在支持获取和设置当前状态了 SIP客户端现在支持MESSAGE协议封包请求 SIP客户端现在支持BYE,CANCEL协议封包请求 SIP客户端请求状态判断现在单独封装到函数里面了 SIP客户端现在支持请求和处理OPTION协议选项了 SIP服务器现在支持获取当前客户端是否存在于列表中 SIP服务器支持通过指定用户查找客户端通信地址的函数 SIP服务器支持处理呼叫请求转发了 SIP服务器现在支持获取和设置客户端状态了 SIP服务器现在支持处理MESSAGE协议转发了 SIP服务器现在支持CANCEL和BYE协议转发了 SIP服务器现在支持转发和获取OPTION协议选项 SIP组包类现在获取数据包可以直接获取协议结构了 帮助组件 数据库模块 MYSQL查询函数增加了返回受影响函数的参数 ====================================================================================== 血与荣誉网络通信引擎2019-5.26.0.1001 Build1129 标准组件 SIP协议模块 删除了以往的SIP协议模块 删除了SIP依赖的开源库,现在自己实现 SIP协议类增加支持解析和打包一个标准的SIP协议 SIP协议类支持自动识别解析请求还是响应包 SIP协议类支持打包解析请求头,响应头,VIA协议,TO,FROM协议,CONTACT协议 SIP协议类支持打包解析用户信息,CALLID,SEQ,EXPIRES,KEEPALIVE,FORWARD协议 SIP协议类支持打包解析允许的方法协议,支持12种方法解析 SIP协议类支持打包解析支持的时间协议,支持3种事件 SIP协议类支持打包解析验证结构体协议 SIP协议类支持打包解析负载数据类型大小 SIP组包类增加,支持分片流组包和获取一个完成SIP协议包 SIP组包类支持随机获取一个包 SIP组包类支持获取一个指定客户端包 SIP配置类增加,支持状态码转换和负载格式类型转换 SIP配置类增加了对HTTP MIME文件格式初始化的支持和兼容 SIP配置类增加了对SIP CODE文件格式初始化的支持和兼容 SIP服务类增加,支持初始化和销毁服务 SIP服务类增加了创建客户端和删除客户端的函数 SIP服务类增加了对MD5摘要验证的支持 SIP服务类增加了对可以插入和删除用户名的函数 SIP服务类增加了对注册协议的支持 SIP客户端类增加,支持创建和删除客户端 SIP客户端类支持注册协议请求 SIP客户端类支持注册协议回复验证 SIP客户端类支持计算信息摘要验证 基础组件 算法模块 数学类修改了获取一个数的每一位数字函数名称,解决定义歧义 数学类增加了获取二进制位是否为0和他的值的函数 数学类增加了设置一个指定二进制位为0或者1的函数 基础模块 修改了基础模块错误定义,现在规范了名称 时间类时间差函数增加了交换判断参数,现在开始和结束时间可以不用关心前后顺序了 字符串类增加了从开始位置查找指定分隔符并且分割字符串的函数 字符串类增加了通过开始和结束位置修改指定范围内字符串的函数 字符串类通过开始和结束获取中间字符串函数修正开始结束是相同字符串查找失败的问题 ====================================================================================== 血与荣誉网络通信引擎2019-5.25.0.1001 Build1109 其他更新 服务程序 P2XP服务已经从版本库中移除 服务组件 修改服务程序,现在安装服务后会自动配置服务为延迟启动了 系统组件 崩溃管理模块已经被移除,不在启用 编解码组件 音视频文件模块 文件解码器增加了设置跳转到指定位置的函数,支持快进,快退,定位 验证组件 修改服务模块,客户端模块,验证加密模块代码,适配最新的基础模块提供的时间计算函数 服务模块 数据库类优化获取时间方式,现在使用内部函数获取 客户端组件 客户端模块 UDX配置增加了对聚合包处理支持 UDX现在支持对于发送过小的包进行聚合处理,解决多次发送过小包的问题 UDX接受数据的时候支持自动处理聚合包和单个包了 UDX增加了新的队列和线程,用于处理聚合包 UDX聚合包现在支持限时发送和超大小发送 UDX修正重传超时配置没有效果的问题 UDX修正接受数据乱序重组配置没有效果的问题 UDX优化丢包配置接受处理逻辑,被移除的服务不会继续处理数据了 核心组件 核心服务模块 UDX配置增加了对聚合包处理支持 UDX现在支持对于发送过小的包进行聚合处理,解决多次发送过小包的问题 UDX接受数据的时候支持自动处理聚合包和单个包了 UDX增加了新的队列和线程,用于处理聚合包 UDX聚合包现在支持限时发送和超大小发送 UDX服务现在会自动启动主线程了,而不是根据配置启动 UDX修正重传超时配置没有效果的问题 UDX修正接受数据乱序重组配置没有效果的问题 UDX优化丢包配置接受处理逻辑,被移除的客户不会继续处理数据了 基础组件 基础模块 时间类获取当前时间字符串函数增加了可以自定义时间的参数结构体 时间类增加了当前字符串时间转时间结构体的函数 时间类删除了SPAN计算类,不在使用类的方式 时间类增加计算间隔时间的函数,支持获取间隔天,时,分,秒,支持传递结构,字符串和time_t 时间类增加了时间加减计算函数,支持传递结构,字符串和time_t ====================================================================================== 血与荣誉网络通信引擎2019-5.24.0.1001 Build1029 其他更新 更新了协议头,增加了UDX相关协议 编解码组件 帮助模块 删除了AVHelp_Device_GetAVList函数,此函数无法起到作用 删除了对SDL的依赖 客户端组件 客户端模块 删除了UDT库的依赖 删除了UDT相关的函数,不在启用,请使用UDX相关API UDX增加-基于UDP协议实现的一套可靠通信网络机制 UDX支持启动管理多个客户端了 UDX支持底层会自动管理网络通信服务 UDX增加了底层自动分片 UDX增加了配置仿TCP模式的连接断开 UDX增加了配置支持TCP滑动窗口的选项,滑动窗口支持双向设置 UDX增加了支持配置乱序重组的选项 UDX增加了丢包重传功能 UDX增加了序列确认功能 UDX增加了支持配置是否允许丢包 UDX增加了线程安全的支持 UDX增加了序列超时确认重传功能 核心组件 核心服务模块 删除了UDT库的依赖 删除了UDT相关的函数,不在启用,请使用UDX相关API UDX增加-基于UDP协议实现的一套可靠通信网络机制 UDX支持启动管理多个服务了 UDX支持底层会自动管理网络通信服务 UDX支持自动释放客户端资源 UDX增加了底层自动分片 UDX增加了配置仿TCP模式的连接断开 UDX增加了配置支持TCP滑动窗口的选项,滑动窗口支持双向设置 UDX增加了支持配置乱序重组的选项 UDX增加了丢包重传功能 UDX增加了序列确认功能 UDX增加了支持配置是否允许丢包 UDX增加了序列超时确认重传功能 UDX增加了线程安全的支持 UDPIOCP回调函数的SOCKET参数现在不起作用 基础组件 算法模块 删除了C_STL相关代码(公用库,LIST,MAP),不在使用 删除了对CSTL的依赖 算法模块对算法进行了分类 增加了排序查找类,现在冒泡排序和快排都在这个下面 排序查找类增加了快速插入算法 增加了数学算法类 数学算法类增加了交换两个数值的函数,支持7种类型 数学算法类增加了获取一个数的每一位的数值,支持正负数 ====================================================================================== 血与荣誉网络通信引擎2019-5.23.0.1001 Build1017 其他更新 环境LIVE555库已经被移除.不在使用此开源库 服务更新 流媒体服务 删除了RTSP服务模块 删除了文件端口配置,不在需要 增加了端口分配模块类,支持初始化,分配,归还 增加了TCPIOCP的支持,用于支持推流和接受流 增加了推流器处理的包支持类 增加了重要部分日志打印信息 修改了RTSP鉴权,目前仅支持BASIC模式 修改RTCP包处理,现在使用单独线程来处理所有客户端的发送者和报告者包 修改RTP发送模式,现在使用多线程来处理RTP包发送 修改了内部推流获取方式,现在与文件流统一了 现在客户端会保存到临时列表并且可以区分推流段和拉流端了 现在直播流和文件流取得方式通过URL前缀表示了(file live) 编解码组件 编解码帮助模块 媒体类获取文件的PPS,SPS和LEAVEID信息函数,现在支持内存模式获取了 媒体类获取SPS信息函数修正返回PPS长度不正确的维内托 网络组件 HTTP模块 服务类发送函数配置参数支持设置是否启用鉴权了 帮助类现在支持解析BASIC鉴权的用户密码 帮助类获取指定字段值修改一处参数注释错误引起的歧义问题 流媒体组件 RTCP模块 描述协议更新现在支持多个包处理了 发送者协议修正MSW和LSB字节序导致NTP时间不正确的问题 发送者解析协议修正发送大小和字节返回不正确的问题 发送者打包函数增加了RTP时间戳参数 发送者解析修正没有导出NTP时间参数的问题 发送者添加了离开包打包函数 接受者解析函数现在能够正常处理没有负载包的情况了 接受者解析函数现在能够正确处理是否是RTCP包的问题了 接受者解析函数修正获取到报告信息不正确的问题 接受者解析函数修改导出参数,现在能够获取到描述信息内容了 接受者解析函数现在能够处理多个负载的报告者包了 接受者解析函数增加了SR时间和序列号获取 接受者修正长度还原计算算法错误导致的问题 删除了接受者和发送者的长度计算还原函数,现在变更到Helper中 RTSP服务模块 模块已经删除,不在使用此模块 RTSP协议模块 打包类增加了返回指定CODE值的函数 打包类增加了请求对方鉴权的封装函数 帮助类SDP组包函数增加了自定义会话ID的参数 帮助类SDP组包函数现在SPS和PPS会再内部自动BASE64编码了 解析类现在支持BASIC模式鉴权 解析类修改了用户信息字段解析方式,解决格式不一致导致的问题 核心组件 核心服务模块 TCPSELECT删除了IO轮训函数.修正转换错误定义不正确的问题 NETSOCKET增加了IO轮训函数,现在所有核心服务公用这一个类的函数了 UDPSELECT接受数据函数增加了使用使用SELECT的参数,不会再阻塞了 基础组件 基础模块 字符串分割IP地址支持第二个参数为NULL了 时间类TIME转系统时间修正一直失败的问题 时间类GMT时间修正星期显示不正确的问题 时间类GMT时间增加了一个新的参数,现在可以自定义时间转换 时间类GMT现在不会再加上DATE前缀了 ====================================================================================== 血与荣誉网络通信引擎2019-5.22.0.1001 Build0917 其他更新 协议头消息队列更新,增加了删除协议,投递和获取包现在区分请求和回复了 协议头扩展协议更新,后续大小被限制到10位,现在可以用于UDP了 协议头扩展协议更新,扩大加密协议位,修正与说明无法匹配的问题 协议头扩展协议更新,分拆版本标志,增加了负载类型标志头 协议头增加了负载类型和加密类型定义,方便使用 服务更新 消息队列服务 现在消息队列中的协议都支持协议头byIsReply设置了 删除了离开包协议,现在使用删除包协议了 现在回复的数据包有明确的结果了 验证服务 现在数据通知请求支持回复确认信息了 修正回复数据没有正确设置协议头后续数据包大小造成的问题 流媒体组件 RTP协议模块 修正在某些环境下协议头对齐方式不正确导致的问题 帮助类获取RTP时间戳函数修改计算方式 打包类现在支持计算发送的包个数和包总大小了 打包类增加了导出发送者报告包输出打包函数 打包类修正序列号和时间戳赋值不正确的问题 打包类修正分片计算大小错误导致播放花屏卡顿的问题 打包类修正分片头未正确设置中间数据标志的问题 RTCP协议模块 修改导出的类型定义名称错误的问题 修正在某些环境下协议头对齐方式不正确导致的问题 发送者和接受者修正错误码重复的问题 发送者和接受者修正打包和解析函数没有带上描述协议头而导致的问题 发送者和接受者增加了一个新的数据包长度计算函数 发送者和接受者修正打包函数计算数据长度不正确的问题 接受者增加了离开服务打包函数 RTSP协议模块 打包类SETUP函数会话ID不在导出,而是输入了 帮助类SDP打包函数LeaveId参数修正不正确的问题,现在使用字符数组来传参了 消息组件 消息队列模块 协议类删除了有数据打包和无数据打包函数 协议类增加了一个新的打包函数,可以支持有数据和无数据打包,并且支持设置回复状态码 协议类修改和POST和GET函数传参方式,现在更加明确目的了 协议类修改了离开打包函数,现在修改为删除包函数 协议类删除了一个序列号管理的保护函数 队列类修正删除队列数据某些时候会死锁的问题 队列类现在删除队列数据函数支持序列为0的所有删除功能了 ====================================================================================== 血与荣誉网络通信引擎2019-5.21.0.1001 Build0910 流媒体组件 RTSP协议模块 解析类删除了解析扩展数据的不支持类型错误导出 解析类现在支持解析带负载内容信息的数据了 解析类支持获取参数设置里面的关键帧参数的值了 打包类获取参数修改,现在支持参数设置和获取打包了 错误码导出定义进行了名称更新 RTP协议模块-增加 解析类支持队列模式解析 解析类支持解析RTP协议头,FU头和NAL头 解析类支持检查BIT和SSRC错误 解析类支持单个NAL单元解析和FU-A分片解析 解析类获取包支持获取整个分片包到一个缓冲区或者分开获取 解析类支持过滤重复的RTP包 解析类支持解析扩展头了 解析类支持获取接收到的包个数和总字节 组包类支持针对每个流创建组包器 组包类支持分片FU-A组包和单个NAL单元组包 组包类支持自动分析传递的数据流,支持内部自动分包分片 组包类支持自动处理时间戳,序列号等数据 组包类支持对RTP头进行扩展了 帮助类增加了RTP时间戳生成函数 RTCP协议模块-增加 支持SR,RR,SDES,BYEE,APP消息处理 发送者报告支持协议消息封装和解析 接受者报告支持协议消息封装和解析 帮助类协议支持创建RTCP-NTP时间信息 帮助类协议支持解析一段缓冲区是否是标准的RTCP协议 编解码组件 帮助模块 设备类增加了新的获取设备函数,支持第三方输入设备注册获取 视频编解码模块 帮助类增加了获取当前支持的硬件编解码类型 视频流编解码增加了对H264和H265的硬件编解码支持 采集模块 音频采集器修正了接受音频可能接受不完成的问题 音频采集器现在支持声卡和麦克风声音采集了 核心组件 内核模块 UDPSelect修正初始化设置无回调模式不起效果的问题 UDPSelect优化发送和接受函数,对多线程支持更好 UDPSelect修正接受数据回调设置判断不正确的问题 基础组件 基础模块 时间类修正GetTimeOfDay与LINUX下的函数生成不匹配的问题 字符串类ANSI与UNICODE转换函数参数修改,现在不在使用返回值的方式 字符串类ANSI与UNICODE转换函数修正中文字符转换失败的问题 ====================================================================================== 血与荣誉网络通信引擎2019-5.20.0.1001 Build0823 服务更新 流媒体服务 现在流媒体服务支持文件流了 RFC组件 SIP模块 升级了SIP库,现在EXOSIP支持加密传输了 编解码组件 帮助模块 媒体信息类增加获取视频文件的SPS和PPS以及LEAVEID信息的函数 视频编解码模块 实时流增加了获取SPS和PPS信息的函数 流媒体组件 RTSP服务模块 文件流修正无法创建RTSP服务器的问题 文件流现在支持自动获取当前路径下的视频文件了 文件流创建RTSP函数支持导出访问的流媒体地址了 RTSP协议模块-增加 帮助类支持网络传输类型解析 帮助类支持播放时间范围解析 帮助类支持URL地址解析 帮助类支持SDP文件打包,目前仅支持H264,支持配置视频信息和打包格式 打包类支持选项,描述,配置,播放,暂停,关闭,获取参数方法打包 打包类选项开关支持自定义配置 打包类支持对状态码翻译打包 解析类支持队列数据模式,把一个数据插入队列和取出队列 解析类支持直接解析模式 解析类支持标准方法,版本,URL,序列号,用户信息解析 解析类支持转义方法为枚举类型,方便操作 解析类支持解析扩展的ACCEPT,TransportSession,Session,Range数据 解析类支持流通道解析 网络组件 后台服务模块 更新获取文件列表协议,现在返回的数据带上协议头并且JSON更加直观了 HTTP服务模块 删除了获取GMT时间内部函数 P2XP组件 P2XP协议模块 用户协议请求客户列表同步函数修正删除了多余的协议数据 服务协议修正同步列表和用户查询返回成功没有带上Code值的问题 基础组件 基础模块 时间类增加了获取GMT时间的函数,通过HTTP服务内部函数移植 时间类修正SQL时间获取崩溃的问题 ====================================================================================== 血与荣誉网络通信引擎2019-5.19.0.1001 Build0712 其他更新 协议头P2XP协议进行了更新,现在分为请求确认协议了 协议头P2XP协议删除了注册和登录协议 服务更新 P2XP服务 删除了验证功能,不在使用 登录验证方式修改 现在支持公网IP地址列表同步了 修改了返回的错误信息 修正点对点连接请求无效的问题 存储组件 SWIFT客户端模块已经删除,不再启用并且已经开源 P2XP组件 P2XP协议模块 客户端协议更新了登录请求协议,现在采用标准验证协议来登录了 服务器协议返回协议删除了一个非JSON响应处理函数 服务器协议响应列表函数修正获取公网IP地址下的列表显示不正确的问题 P2XP节点模块 现在添加一个节点到节点管理器的时候不在允许相同用户名添加了 节点信息现在使用登录的数据结构而不是采用注册的数据结构了 P2XP客户端模块 帮助类获取信息现在不在显示网络连接类型了,用户可以自己添加 网络组件 HTTP模块 HTTP服务修正遇到组包的情况下的缓冲区被冲掉的问题 API模块 网络类增加了获取IP地址函数,并且优化了外网地址获取速度 HTTP类POST和GET操作延长了超时时间 HTTP类POST和GET扩展参数支持获取返回的HTTP协议头了 HTTP类POST和GET调整了参数顺序,更加符合使用规范了 HTTP类增加了自定义方法提交函数,并且支持获取返回的HTTP头 下载组件 下载模块 修正HTTP和FTP下载大文件超时不成功的问题 核心组件 核心服务模块 TCP短连接服务修正启动的失败造成网络句柄泄漏的问题 TCPIOCP修正退出的时候某些情况下崩溃的问题 网络帮助类删除了获取网页源码函数.使用APIHelp_HttpRequest_Get函数替代 网络帮助类删除了获取IP地址函数,被移动到网络API模块下 ====================================================================================== 血与荣誉网络通信引擎2019-5.18.0.1001 Build0706 服务更新 存储服务-增加 支持文件夹创建,删除,查询 支持文件上传,下载,删除,查询 支持用户登录和注册 协议头更新 增加了存储协议文件夹查询删除协议 存储组件 存储协议模块 核心协议增加了请求查询文件协议解析功能函数 核心协议增加了支持文件上传下载的解析函数 核心协议增加了文件假创建和查询以及删除的解析函数 核心协议增加了用户注册解析函数 通用协议修改了文件解析函数名称 客户协议修改了上传文件封装函数,现在支持上传和下载了 客户协议增加了文件夹操作封装协议和文件夹查询协议 客户协议增加了用户注册封装协议 存储核心模块 数据库文件查询现在支持用户查询了并且修改了参数位置 数据库文件和文件夹删除函数参数修改为用户名了 数据库文件夹结构现在不在需要设置备份目录成员了 数据库文件夹操作插入修正没有ROOT文件字段导致插入失败的问题 数据库用户增加了设置用户状态的函数 数据库用户删除了部分字段,简化了操作 会话管理增加了令牌导出和获取令牌对应信息的功能函数 会话管理修正通过地址获取用户信息失败的问题 系统组件 系统模块 文件类枚举函数增加了一个新的导出参数,可以单独导出为list 文件类枚举函数修改了枚举类型的传参方式 文件类创建多级目录修正了无法使用相对路径创建的问题 帮助组件 组包模块 文件组包修正协议头内部缓冲区过小造成的崩溃问题 文件组包修正创建客户端判断错误创建不成功的问题 文件组包创建文件函数增加了导出文件信息和令牌的参数 文件组包投递数据增加了判断文件是否创建成功的错误处理 文件组包现在支持上传下载传送和获取数据了 文件组包增加了附加数据信息的设置和获取函数 ====================================================================================== 血与荣誉网络通信引擎2019-5.17.0.1001 Build0702 其他更新 协议头更新 协议头文件协议修改为存储协议 存储协议增加了用户,文件相关协议 删除了P2XP文件操作相关协议,不在使用 服务更新 P2XP服务 P2XP服务删除了文件相关操作代码,现在P2XP将专注于协议内容处理 P2XP服务删除了数据库相关操作代码 P2XP服务现在不需要注册登录即可使用 P2XP组件 删除了P2XP文件管理模块 删除了P2XP核心模块,目前没有作用 P2XP协议模块 用户协议删除了文件请求协议 服务协议删除了查询文件返回协议 P2XP节点模块 修正删除一个节点的时候无效导致下次获取局域网列表还会获得的问题 存储组件 存储核心模块-增加 增加了数据库管理功能支持用户,文件,文件夹增删查操作 增加了会话管理类,支持插入和删除获取操作 存储协议模块-增加 客户端协议增加了对文件上传下载打包协议支持 客户端协议增加了文件查询和删除协议打包支持 通用协议增加了通用回复和通用解析函数支持 服务协议增加了返回查询列表的打包协议 帮助组件 组包模块 文件组包器删除了设置目录的函数 文件组包器增加了创建一个接受客户端的函数,用于接受处理提速 文件组包器现在支持线程安全了 文件组包器增加了协议头组包和设置新文件接受目录的功能函数 文件组包器增加了获取协议头组包状态函数 文件组包器增加了扩展类,现在支持操作多个文件组包器了 数据库模块 MYSQL修正启动参数设置不正确造成某些情况下崩溃的问题 核心组件 核心模块 更新IOCPTCP启动函数,增加了网络事件处理线程数量的设置 更新IOCPUDP启动函数,增加了网络事件处理线程数量的设置 套接字操作类现在关闭套接字不会再返回错误码了,解决某些时候没有关闭套接字的问题 IOCPTCP修正某些时候没有回调通知客户端离开事件的问题 基础组件 基础模块 时间类获取系统时间函数修正获取到的时间全是0的问题 时间类GetTimeOfday函数返回的时间不会再使用UTC时间了,而是用本地时间 ====================================================================================== 血与荣誉网络通信引擎2019-5.16.0.1001 Build0622 服务程序 修正P2P和后台服务写日志出现错误的问题 验证组件 序列号模块 删除了分钟序列卡生成相关函数,现在集成到一起了 生成序列卡的时间现在默认填充到5位数了 现在生成的序列卡扩展到第十个段位了 对错误码进行了优化和精简 采用了新的函数集来操作此模块,以前的函数已经被抛弃 帮助组件 日志模块 删除了日志模块的锁,现在对多线程支持更好了 日志模块内部缓冲区被做了限制,不在使用全局缓冲区 系统组件 系统API模块 修正删除多级目录删除主目录参数在有多个下级目录不生效的问题 系统类增加了SYSTEM扩展函数,支持执行命令超时 网络组件 网络帮助模块 优化64位主机网络字节需转换函数 核心组件 池管理模块 内存池删除了销毁回调数据结构一个多余的成员参数 基础组件 基础模块 句柄类修正删除句柄函数没法使用内存的问题 句柄类添加新的对应句柄不在需要添加对应的值,现在通过设置添加值即可 句柄类删除了销毁函数,与del函数冲突了 句柄类增加了创建GUID(UUID)的函数,支持输出指定大小写格式和是否带-的字符串 句柄类删除了C++模板类,现在所有功能都使用C函数了 句柄类管理器被修改,内部现在使用新空间了,防止跨区段错误 ====================================================================================== 血与荣誉网络通信引擎2019-5.15.1.1001 Build0605 服务组件 验证服务 修正客户端端口网络没有更新离开时间的问题 验证组件 服务验证模块 增加了通过地址信息获取对应用户名的函数 优化了服务锁的使用,现在对多线程支持更好了 客户端验证模块 增加了客户端句柄管理器,用于管理多个客户端 句柄管理器支持管理客户端时间信息,可以获取当前在线超时时间 句柄管理器支持回调被动方式和主动查询方式获取客户端超时 网络组件 HTTP模块 服务解析器增加了事件管理函数集,现在是否有一个完成包可以通过事件来处理了 核心组件 核心服务模块 修正强制心跳超时的函数在某些情况下会崩溃的问题 ====================================================================================== 血与荣誉网络通信引擎2019-5.15.0.1001 Build0601 协议头更新 网络验证协议修改了协议定义类型,现在区分请求和回复了 网络验证协议删除了错误协议定义,现在用户需要自己定义处理方式 标准协议头和扩展协议头增加了一个新的字段,这个字段可以用于用户自定义数据 服务组件 删除了更新服务组件相关代码 验证服务 重构了验证服务网络协议相关代码 采用了TCPIOCP+组包模块方式来处理网络数据包了 信息回调采用了新的协议处理方式 错误处理采用了协议头的保留字段来做错误信息提示 验证组件 序列号模块 删除了协议头的时间结构体,现在使用基础库的时间结构 服务验证模块 删除了通信相关功能,保留协议处理功能,现在需要用户自己提供网络IO 删除了SMTP相关功能 数据库操作增加了用户注册函数 数据库操作增加了用户充值操作函数 数据库操作增加了用户离开处理函数 网络操作类进行了大部分重写 网络协议增加了充值协议和时间类协议 网络操作获取客户端修改现在只能获取用户信息了 网络操作类增加了获取用户在线和剩余时间的函数 网络操作类修改了接受和发送处理函数方式 网络操作类增加了登录,删除,找回密码专用协议处理函数 网络操作类增加了通过用户获取对应网络地址的函数 网络操作类的回调函数进行了重写,删除了网络IO,对事件回调进行了优化 客户端模块 删除了网络IO操作代码,现在只进行协议处理 删除了扩展网络IO导出函数 网络组件 HTTP服务模块 优化GMT时间显示格式,现在自动填充时间格式了 随机获取包函数优化了获取流程方法,解决了多客户端的时候取得不正确的问题 服务组件 核心服务模块 TCPEPOLL增加了跳过客户端处理的函数 TCPEPOLL优化发送数据的时候锁的处理,对多线程发送支持更好 TCPEPOLL发送数据给所有客户端函数修正死锁的问题 ====================================================================================== 血与荣誉网络通信引擎2019-5.14.0.1001 Build0522 其他更新 协议头增加了CODE的离开包协议定义,用于处理一些特殊情况 网络组件 后台模块 删除了提交文件列表函数多余的HTTP代码 修正处理HTTP协议的时候初始化回调函数传递NULL不生效导致的问题 音视频组件 音视频帮助模块 媒体信息增加了获取音视频文件有多少个音频和视频流的函数 封装包模块 文件编解码启动获取总时间参数现在可以分别获取音频和视频的时间了 文件编解码扩展了回调函数的导出参数,可以获取帧编号和类型等信息了 转换器启动参数现在可以获取音视频总时长了 转换器现在支持设置暂停和继续了 转换器现在支持设置回调函数导出相关信息了 音视频打包启动参数现在可以获取音视频总时长了 音视频打包支持设置回调函数导出相关信息了 音视频打包修正索引值不正确导致音视频时间错误的问题 音视频解包增加,支持把一个音视频文件分解成单独音频和视频文件 音视频解包支持支持启动和释放多个音视频解包器 音视频解包支持设置回调数据信息,和获取运行状态与时间 音视频解包支持暂停继续功能 验证模块 加解密验证模块 注册文件类删除了XML模块的依赖,现在采用配置文件方式读写 注册文件类删除了系统API模块的依赖,现在硬件信息需要用户填写了 注册文件类删除了初始化和销毁,获取机器码的函数,不在需要 注册文件类现在读写函数可以直接操作CDKEY了 注册文件类删除了创建CDKEY的函数,现在需要自己创建了 注册文件类增加了构建时间的函数,可以通过此函数构建CDKEY的过期时间信息 注册文件类增加了获取过期时间的函数,支持分类获取过期时间(秒.分.时.天) 注册文件类增加了注册者用户信息读写功能,支持获取设置用户名和联系方式等信息 加解密类删除了初始化和签名验证相关函数 客户端模块 网络验证现在不需要依赖NetEngine_AuthRegCrypt模块,优化服务器大小 本地验证代码已经被删除,不在使用,本地验证现在请使用加解密验证模块 加解密方法函数已经被删除,现在需要用户自己加解密数据 服务验证模块 网络验证现在不需要依赖NetEngine_AuthRegCrypt模块,优化服务器大小 加解密方法函数已经被删除,现在需要用户自己加解密数据 帮助组件 组包模块 扩展组包修正清理和删除包的时候,处理当前包个数不当的问题 扩展组包确认最后包状态函数现在会正确返回处理结果了 核心组件 池管理模块 线程池无队列模式修改启动函数参数,现在支持参数传递了 内存池现在内部是线程安全了,多线程不会造成申请释放内存崩溃了 核心服务模块 TCPIOCP修改TCP心跳使用,优化针对客户端启用的方式 TCPIOCP现在使用了线程池处理网络I/O数据并且不会乱序了 TCPIOCP现在客户端进入后会自动选择最优线程池中的线程进行绑定了 TCPIOCP启动的服务内部函数进行了优化,对客户端连接投递方式进行了优化 TCPIOCP修正销毁资源没有销毁接受连接线程的问题 UDPIOCP发送函数进行了修改和优化,现在拥有发送大小输入输出参数了 UDPIOCP修正获取事件线程的对应绑定数据失败的问题 UDPIOCP优化接受数据函数,不会在有错误,对于错误处理全部抛出到回调中了 UDPIOCP优化错误码,统一规范了错误定义 UDPIOCP启动函数现在不需要在设置最大客户端数量了,因为没有作用 NETSOCKET修正心跳设置无效的问题 安全模块 加解密类优化信息摘要加解密代码,修正某些时候加解密失败的问题 ====================================================================================== 血与荣誉网络通信引擎2019-5.13.0.1001 Build0505 其他更新 协议头 删除了后台管理服务的连接协议,不在需要 服务组件 系统服务程序 增加了安装的时候自动添加描述信息的功能 优化了部分代码,删除了日志输出功能 调整项目字符集,现在使用UNICODE了 系统组件 WINIO模块 此模块已被删除,因为和引擎功能性无关联 帮助组件 日志模块 删除了WIN系统日志事件类型,继承到SYSLOG类型里面了 现在写WINDOWS系统日志类型功能已经支持了 网络组件 后台模块 HTTP请求返回的数据将没有处理请求了,现在只会做连接处理 TCP接受的数据协议头现在必须是数据结构了,后续还是JSON TCP协议扩展了数据接受缓冲区大小 优化了协议处理函数,调整了安全检查先后顺序 初始化现在可以配置每次HTTP请求的间隔时间了 API模块 修正域名分割函数在处理单独域名的时候无法正常识别的问题 核心组件 NETXAPI模块 流量控制服务修正初始化和反初始化没有效果的问题 流量控制服务修正添加过滤器永远失败的问题 流量控制服务现在初始化函数可以指定要设置的网卡名称了 流量控制现在支持操作和初始化多个网卡了 流量控制现在支持线程安全了 流量类错误定义与LINUX版本同步 核心服务模块 IOCPTCP登录回调返回值支持返回假,禁止用户连接 IOCPTCP删除了一个多余的内部关闭客户端资源函数 IOCPTCP优化了创建完成端口代码 IOCPTCP修正在某些时候存在的客户端提示不存在的问题 黑名单模块-(增加) 黑名单模块增加了对IPV4地址的支持 IPV4黑名单支持创建和管理多个 IPV4黑名单支持添加范围IP地址和单个IP地址 IPV4黑名单支持IP地址单个或多个通配符方式添加 IPV4黑名单支持添加IP地址的时候进行去重判断 IPV4黑名单IPV4支持判断一个IP地址是否存在于黑名单 IPV4黑名单支持单IP点全匹配机制 IPV4黑名单支持添加删除白名单,白名单优先级高于黑名单 IPV4黑名单支持获取黑白名单列表信息 域名黑名单支持创建和管理多个 域名黑名单支持添加管理多个黑名单域名地址 域名黑名单支持域名地址通配符方式添加 域名黑名单支持添加地址的时候进行去重判断 域名黑名单支持判断一个域名地址是否存在于黑名单 域名黑名单支持添加删除白名单,白名单优先级高于黑名单 域名黑名单支持获取黑白名单列表信息 基础组件 基础模块 字符串类IP地址结构化现在支持非标准地址返回解析了 字符串类IP地址结构化函数现在支持返回正确性判断了 字符串类删除了IP地址组合的函数,没有多大意义 ====================================================================================== 血与荣誉网络通信引擎2019-5.12.0.1001 Build0424 编解码组件 音频编解码模块 音频编码现在支持自动判断多通道分组数据编码了 音频解码增加了新的导出数据信息,现在可以实时了解音频解码通道信息了 音频解码器回调函数现在只回调一次完整的数据了 重采样函数已经被继承到帮助类中,不再与编解码器关联 帮助类重采样转换函数现在会导出采样后的数据了 帮助类重采样修正转换函数获取大小失败的问题 帮助类重采样支持多通道数据PCM导出到一个BUFF里面了 帮助类增加了音频过滤器接口,支持设置多个过滤器 帮助类增加了音频复用接口,支持多个音频混合 视频编解码模块 帮助类过滤器修正提供的导出大小不合适死锁的问题 帮助类过滤器转换函数修改了函数命名规则 帮助模块 媒体信息类获取的时候增加了获取专辑封面图片的功能 封包模块 增加了对文件编解码的功能类(支持文件解码) 文件解码支持自动预测要解码的格式 文件解码支持同时操作多个文件 文件解码支持获取执行状态 文件解码支持设置暂停继续 文件解码支持获取音视频文件总时间 文件转换器现在支持内部音视频多个流的转换到目标格式了 增加了音视频复用功能函数类 文件复用支持自动预测编解码格式 文件复用支持合并音频和视频为一个文件 文件复用支持获取执行状态,是否完成 文件复用支持设置暂停继续 帮助组件 脚本模块 删除了X语言脚本与相关资源,已经没有任何作用,代码已在论坛开源 日志模块 初始化函数现在回自动判断目录是否存在并且创建目录了 直写日志模式现在支持动态删除日志文件并且自动创建了 基础组件 基础模块 字符串类获取字符串文件路径和名称增加了备注信息,解决歧义 字符串类删除了GetUrl函数,这个函数与NetHelp_APIHelp里面的函数重复了 ====================================================================================== 血与荣誉网络通信引擎2019-5.11.0.1001 Build0413 其他更新 协议头更新 协议头更新了协议类型定义,更好观看了 协议头规范了协议使用方法,更新了说明 协议头删除了离开包CODE字段,现在离开包只需要一个TYPE类型了 下载组件 下载模块 现在HTTP和FTP下载上传文件支持HTTPS模式了 客户端组件 客户端模块 TCPSELECT类现在接受数据可以阻塞模式接受了 帮助组件 解压缩模块 解压获取信息函数现在可以获取当前文件是否是目录了 压缩的函数现在文件参数支持NULL创建文件夹了 组包模块 帮助类扩展打包函数修正没有导出组包后长度的问题 扩展类初始化函数修改名称,增加了分包是否触发事件开关功能 扩展类随机获取函数现在支持获取所有组包的函数了 扩展类修正获取所有包函数失效的问题 扩展类修正穿插数据获取不正确的问题 扩展类现在能够正确处理释放包后的事件后的个数统计工作了 扩展类修正协议头和协议尾组包不能够正常拷贝数据的问题 扩展类GetAll函数修正参数协议头传递NULL无效的问题 编解码组件 视频编解码模块 文件转换功能已经被删除,功能有问题 视频图像转换器函数类现在继承到帮助类里面了 帮助类增加了为视频图像添加滤镜(过滤器)的功能函数 过滤器支持添加图像,文字信息等 音视频封装模块 增加了文件格式转换功能,支持自定义预测音视频文件格式转换 支持视频文件和纯视频编码文件转换 支持同时创建管理多个转换器 支持获取转换器状态 核心组件 安全模块 编码类BASE64现在支持设置是否换行了 池管理模块 内存池在申请内存的时候现在可以支持复用内存了 内存池在释放内存的时候查询到指定内存后不会再继续循环了,优化了性能 连接池修正关闭函数在套接字使用失败会返回错误的问题 基础组件 基础模块 时间类修正获取时间结构某些时候会崩溃的问题 ====================================================================================== 血与荣誉网络通信引擎2019-5.10.0.1001 Build0330 网络组件 后台管理服务模块 增加获取数据的时候获取系统启动时间的字段 增加了结束指定进程的协议功能 现在不支持的协议处理结果将返回失败了 客户端组件 客户端模块 UDPSELECT增加了一个不需要导出地址的接受数据函数 编解码组件 视频编解码模块 增加了实时编解码H265的支持 采集器模块 增加了视频采集格式数据结构定义 修改了音频采集格式数据结构定义的名称,规范了命名 帮助模块 媒体信息重写了获取函数 媒体信息现在可以获取元数据信息(作者信息等) 媒体信息现在可以获取音视频码流信息了 媒体信息设置元数据函数现在会自动转换UTF8了 设备信息修改了获取设备列表函数,增加了获取视频设备信息的功能 设备信息获取列表函数增加了导出音频和视频设备个数的功能参数 设备信息删除了获取设备的内部函数,没有作用 设备信息获取设备DSHOWVFW列表修改,现在可以通过一个函数获取所有设备列表 设备信息增加了自定义输入名称获取支持的输入设备的函数功能 RFC组件 NAT客户端模块 增加了STUN协议客户端 支持构建请求包,支持自定义发送和接受流程 支持设置STUN服务器回复端口 支持设置修改IP地址和端口 流媒体组件 RTSP服务模块 实时流修正无法获取队列H264数据无法播放实时流的问题 实时流服务现在创建成功一个流后才会给客户端反驳成功了 实时流服务修正绑定网卡IP地址无效的问题 实时流推流增加了H265编码推流模式 实时流请求回复的时候现在如果存在的TOKEN会重新创建并且返回给请求客户端了 调整模块代码结构.优化推流类型 核心组件 核心服务模块 文件缓存栈的缓冲区大小时间跨度计算工具修改成其他方式计算了 基础组件 基础模块 字符串修正UTF8与GBK互转函数使用的时候崩溃的问题 时间类优化格式化到SQL时间的代码,优化逻辑 时间类格式化到字符串时间现在可以直接获取标准SQL时间了 时间类TIME格式时间到字符串时间现在获取的是结构体了 时间类修正gettimeofday获取不正确的问题 时间类获取系统时间现在扩展了结构体获取的数据内容,支持日期,星期等信息获取 ====================================================================================== 血与荣誉网络通信引擎2019RC2-5.3.0.1001 Build0325 服务程序 修改了服务程序的代码,适配最新版本 验证组件 验证服务模块 验证服务修正某些时候退出崩溃的问题 系统组件 系统模块 系统API修正获取系统版本号失败的问题 网路组件 HTTP服务模块 帮助类增加支持标准CGI程序执行的功能 帮助类CGI执行支持环境参数设置和CGI头与数据的导出 帮助组件 组包模块 帮助类修正校验码计算结果不正确的问题 帮助类删除了通过头构建数据包函数 帮助类修改了构建包的参数方式,现在支持无数据包类型了 帮助类增加了扩展包构建函数 扩展组包类修改了包ID类型为套接字句柄,加快速度和方便 扩展组包类优化了清理和删除函数内部代码 扩展组包获取函数修改获取数据没有判断是否是完整包的问题 扩展组包现在已经支持分包穿插数据方式组包和获取包了 组包模块现在支持判断并且创建空的离开包了 组包模块投递函数现在对于没有的KEY值支持设置自动创建了 数据库模块 取消了PostGreSQL数据库的默认加载方式,请参考官方文档 日志模块 修正打印日志因为级别设置不正确导致无法输出信息的问题 核心组件 核心服务模块 IOCPUDP增加了扩展模块函数,支持创建多个IOCPUDP,现在必须使用扩展函数 安全模块 BASE64编解码函数已经修改到编解码类中 API集分离了加解密和证书操作函数为两个类 API集优化RSA代码使用流程 API集修正RSA用户密码设置无效的问题 证书签名类修正获取证书内容编码转换崩溃的问题 证书签名类修正获取证书内容部分数据异常的问题 证书签名类获取证书内容修正获取时间不正确的问题 证书签名类删除了一个用于生成签名数据的内部函数,没有多大作用 证书签名类签名与验证函数重写了,解决了以往的问题.现在可以使用了 证书签名类修改了验证证书状态函数使用方式,简化了参数 证书签名类增加了CA根证书一键生成函数 证书签名类增加了为私钥生成签名请求文件的功能函数 证书签名类增加了为签名请求函数签名验证的函数 证书签名类修正获取证书信息某些属性会崩溃的问题 池管理模块 线程池修正跳过任务队列过程中崩溃的问题 线程池修正在销毁的时候某些时候崩溃的问题 基础组件 基础模块 事件类修正判断句柄存在与否逻辑错误的问题 事件类修正有等待事件函数调用的时候会造成其他函数卡死的问题 ====================================================================================== 血与荣誉网络通信引擎2019RC1-5.2.0.1001 Build0308 其他更新 更新了使用的开源库的版本 帮助组件 数据库模块 删除了句柄管理器,不在需要 SQLITE修改了对回调函数的定义。统一名称 增加了对MONGODB的支持 MONGODB内部采用连接池工作,支持线程安全 MONGODB支持管理多个数据库链接 MONGODB支持执行命令模式 MONGODB支持插入,删除,更新,查找操作 MONGODB支持统计操作 MONGODB支持BSON和JSON操作 MONGODB支持删除集合 增加了对PostgreSQL的支持 Postgre支持管理多个数据库链接 Postgre支持查询模式和非查询模式 Postgre支持监听模式 验证组件 修改了组件下的模块错误类型定义,统一了错误定义规范 验证客户端 网络验证修改获取IO数据类型长度处理不和逻辑的问题 网络验证扩大了数据缓冲区大小 网络验证客户端现在扩展了函数集,支持多个客户端进行网络验证了 本地验证调整了代码结构,解决一些歧义问题 网络组件 测试模块 增加了ARP测试工具 支持同时多个ARP测试 支持设定测试次数和时间 支持随机生成原始MAC地址和IP 支持导出测试次数和测试时间 RFC组件 代理服务器 隧道代理修改了TCPIOCP使用不正确的问题 核心组件 核心服务模块 原始套接字数据结构增加了原始MAC和目的MAC成员 原始套接字增加了ARP协议初始化和组包的功能 原始套接字修正ICMP错误码重定义的问题 TCPIOCP增加了获取所有客户端列表的函数 TCPIOCP导出函数现在只能用扩展函数了 NETX模块 现在抓包工具集API不在支持WINPCAP,需要安装Npcap ====================================================================================== 血与荣誉网络通信引擎2019BT-5.1.0.1001 Build0119 帮助组件 日志模块 修改了日志内部缓冲区使用栈内存 组包模块 帮助类修改统一了函数命名,现在函数名称被修改 帮助类增加了校验和计算函数 文件类组包修改统一了函数命名 组包类内部文件名和函数名修改,现在统一了函数命名以及错误 组包类修正了获取单队列模式包长度大小不合适处理错误的问题 增加扩展协议,用于更高级的组包模式 支持数据头尾验证 支持数据校验 优化协议大小 支持加密标志 支持分包处理 暂时不支持离开包和CHECKED数据模式 P2XP组件 客户端模块 帮助函数集增加了P2P_UDP打洞的接口 RFC组件 SNMP模块 增加了SNMP模块客户端功能 支持SNMP-GET和SET操作,支持针对单独OID进行操作 支持同时操作多个SNMP客户端 系统组件 系统API模块 进程API修改了创建进程函数使用逻辑,现在不会阻塞进程了 进程API增加了一个新的运行函数,这个函数会阻塞主进程 客户端组件 客户端模块 UDPSELECT的创建函数流程修改,现在默认地址端口可以为空了 UDPSELECT修正创建的时候句柄没有插入的问题 UDPSELECT发送数据的时候可以指定发送地址了 核心组件 核心服务模块 UDPSELECT现在初始化不在需要对方IP和端口 UDPSELECT删除了SEND函数,现在发送必须使用SENDTO函数 基础组件 基础模块 事件类修改函数参数名称,解决歧义 事件类修正事件在某些时候无法正常响应的问题 事件类现在对多线程支持更好了 事件类修正内部失败的操作可能会引起死锁的问题 事件类的超时等待现在支持一直等待了 字符串类修正了编码转换函数无法正常使用的问题 更新预定义函数编码转换不生效的问题 ====================================================================================== 血与荣誉网络通信引擎2019PT-5.0.0.1001 Build0119 其他更新 APP例子组件已经不在主版本库里面了 系统组件 系统API模块 模块已经被重构,函数名和类型定义已经全部修改 文件API优化了目录枚举和创建目录的内部函数,减少冗余 系统API获取内存使用增加了使用率的导出字段 系统API获取CPU使用率修改了获取参数方式 系统API关机函数同步了WINLIN使用代码方式 系统API修正获取系统启动日期不正确的问题 硬件API统一了函数和结构体参数命名规则 进程API删除了获取UID信息的函数,没有多大作用 进程API修改了获取指定进程CPU占用率的方式 进程API增加了设置和获取进程到指定CPU的函数 进程API创建进程现在会导出创建的进程ID了 界面API修改了窗口吸附样式的使用,解决了多窗口吸附问题 界面API修改了窗口嵌入函数使用,现在使用已有窗口了 WinIO模块 修改了函数导出名称和导出的定义,现在命名规范统一了 修改了获取错误函数使用方式 删除了错误导出文件里面多余的内容 崩溃模块 修改了函数名和导出的定义,现在命名规范统一了 更新组件 解析器模块 删除了一个多余的系统API模块依赖 帮助组件 日志模块 修正日志级别判断错误导致日志打印问题 修改打印日志的时候没有初始化缓冲区造成的问题 RFC组件 RFC组件和模块被重新命名了 代理服务器模块导出函数和定义已经被修改 电子邮件模块 统一修改了函数命名和错误码定义 WEBSOCKET模块 统一了错误定义类型和定义 修改了函数导出名称和解释,规范了定义和歧义 连接器解析删除了字符串解析,现在采用基础库的函数 连接器现在需要用户传递客户端的KEY了 加解密删除了错误码定义,没有使用到 SIP模块 增加了SIP服务器功能函数 支持创建多个服务器 支持自动应答默认事件和自处理事件应答 支持呼叫和消息处理 增加了SIP客户端功能函数 支持创建多个客户端 支持注册消息 支持创建多个呼叫请求 支持发送INFO和MSG消息 支持读取事件消息 网络组件 GSM模块因为没有作用已经被删除(VIP用户可以去论坛下载源码) 核心组件 安全模块 编码组件增加了BCD和字符互相转换的功能函数 编码组件增加了BCD字符和整数互相转换的功能 核心服务模块 IOCPTCP现在支持获取接受数据的相差时间了 IOCPTCP现在回调函数事件增加了导出套接字句柄的选项 IOCPUDP现在回调函数增加了导出套接字句柄的选项 心跳管理现在支持性能负载参数设置了 心跳管理现在支持获取机器负载率和负载类型了(需要客户端支持) 基础组件 基础模块 字符串操作增加了从末尾开始删除到指定字符的功能 ====================================================================================== 血与荣誉网络通信引擎2018-4.34.1.1001 Build1228 其他更新 服务组件 更新了所有服务组件程序,适配最新SDK的API 帮助组件 日志模块 修正日志模块打印级别判断错误导致无法打印日志的问题 验证组件 验证客户端 优化内部代码事件管理逻辑处理 核心组件 核心服务模块 套接字类修正发送的长度不正确没有导出已发送数据大小的问题 套接字类发送函数现在直接返回错误码了,防止在极端情况下错误信息不正确的问题 池管理模块 线程池对竞争模式和派送模式增加了跳过指定任务序列的功能 基础组件 基础模块 时间类获取当前系统时间支持获取毫秒级别了 时间类差度计算工具修正导出的时间小数点后总是0的情况 ====================================================================================== 血与荣誉网络通信引擎2018-4.34.0.1001 Build1226 帮助组件 日志模块 修正打印日志级别设置无效果的问题 现在打印的日志时间格式固定大小了 基础组件 基础模块 重定义了导出函数名和导出文件名格式 重定义了导出错误码定义,规范了格式 重新修改了内部代码文件规范了名称 字符串操作删除了设置本地语言环境的函数 字符串操作增加了获取IP地址结构的功能 句柄扩展类的函数现在使用了EX后缀名 时间类的计算时间差函数修改了句柄管理方式 事件类导出的类结构名修改,防止冲突 算法模块 重定义了导出错误码定义,规范了格式 核心组件 NETXAPI模块 重构了抓包模块。优化内部结构和使用流程 抓包模块现在支持过滤器设置了 抓包模块现在支持抓到的数据写到文件了 抓包模块现在转换函数将导出了,不在内部转换 抓包模块现在支持多个抓包器了 抓包模块现在支持获取本地网卡列表了 抓包模块导出的数据信息将更加完善 网络枚举修正无法枚举局域网列表的问题 网络枚举现在支持多个枚举处理了 网络枚举现在使用回调方式获取局域网列表了 网络枚举现在支持扫描指定IP段的地址了 线程池模块 重定义了导出错误码定义,规范了格式 安全模块 重定义了导出错误码定义,规范了格式 协议模块 修改了TCP,ARP,UDP,ICMP,以太网协议定义格式,与LINUX同步 核心模块 现在统一更新了模块所有的错误码 增加了原始套接字操作类,支持IP,ICMP,TCP,UDP原始协议数据打包和初始化 ====================================================================================== 血与荣誉网络通信引擎2018-4.33.0.1001 Build1214 P2XP组件 数据分发模块 更新错误定义,修正和统一了错误定义的一些问题 网络服务修改了由于客户端模块函数改动而造成的改动 网络服务修正关闭客户端资源可能崩溃无效的问题 网络组件 测试模块 更新错误定义,现在统一了定义 网络测试增加了UDP数据压力测试函数,功能和TCP一样 DDOS测试删除了UDP和TCP数据测试 DDOS重新设计SYN和ICMP协议测试函数代码 DDOS现在SYN和ICMP测试函数用法和SOCKET测试一样了 DDOS现在支持创建多个测试用例了 编解码组件 采集器模块 音频采集器修正设置回调函数没有起作用而崩溃的问题 播放器模块 增加了音频播放功能函数 音频播放支持打开关闭,投递数据 音频播放支持暂停继续,获取剩余播放队列大小和清除队列函数 客户端组件 客户端模块 现在客户端获取错误码始终导出最后发生的错误了 UDPSELECT删除了扩展函数库代码 UDPSELECT重构了代码,现在代码函数名和TCP客户端相近了 UDPSELECT删除了回调函数模式代码,不在内部启用线程了 UDPSELECT现在对IOSELECT支持更好了 UDPSELECT现在默认支持创建多个UDP客户端 UDPSELECT现在绑定函数单独出来提供了 UDPSELECT删除了设置发送地址和网络地址转换函数 核心组件 协议模块 删除了UDP测试函数,测试模块已经拥有了此功能 修改了RFC协议ICMP.TCP,IP协议定义规范 ====================================================================================== 血与荣誉网络通信引擎2018-4.32.0.1001 Build1210 更新组件 修正文件解析模块,更新模块,更新解析模块编译警告信息 P2XP组件 数据分发模块 修改了由于UDP服务函数修改而造成的改动 网络组件 测试模块 测试模块修改了错误码定义,现在统一了错误定义方式 TCPSOCKET测试修改锁的使用方式 删除了短链接测试功能函数 修改了获取错误码使用和定义,规范了错误码函数定义 现在网络测试可以回调获取测试状态了 现在网络测试可以回调获取测试时间信息了 链接测试重写了,现在链接测试函数可以创建多个客户端了 链接测试现在函数的属性已经被修改,支持的属性配置更加方便 数据包测试诶重写了,优化了内部逻辑和代码结构 数据包测试现在能够正常处理自定义数据和测试包数据了 数据包测试现在能够正常管理内存了 数据包测试现在支持发送接受数据和延迟测试了 帮助组件 打包模块 二进制打包解包初始化函数现在支持密码设置了 现在打包解包支持获取文件包属性了(文件个数,文件大小等) 现在初始化失败可以正常关闭资源句柄了 核心组件 核心服务模块 UDPSELECT修改了初始化函数使用,现在支持提供服务端和客户端了 UDPSELECT删除了启动服务和移除客户端函数,不再启用 UDPSELECT删除了事件的处理定义 UDPSELECT现在支持主动模式接受UDP数据了 UDPSELECT现在主动和被动接受数据支持模式设置了 UDPSELECT修改了错误码定义,统一了错误码 ====================================================================================== 血与荣誉网络通信引擎2018-4.31.0.1001 Build1130 其他更新 修改了项目和代码,确保编译没有警告信息 P2XP组件 P2XP分发模块 文件缓存修正投递数据对于无位置参数情况写入不正确的问题 P2XP协议模块 增加了P2XP客户端互通协议,支持封包请求和发送协议 系统组件 调试模块 此模块已经删除,HOOK模版已经不在起作用 WINAPI模块 删除了窗口磨砂效果设置函数功能 系统API优化了关闭屏幕代码 系统API修改了获取系统版本,减少了导出参数和获取方式 客户端组件 客户端模块 TCP重叠模型销毁客户端管理器的时候不在判断句柄是否有效 核心组件 池管理模块 线程池增加了无队列线程池,可以直接转换函数为线程池函数 线程池创建现在第一个参数现在可以为默认值了 线程池创建线程的时候现在会自动关联CPU了 线程池优化了按照队列个数投递方式选择的时候一处个数问题 内存池申请的内存只有在32位下内存对齐参数才有效果 连接池修正获取属性内部失效的问题 服务模块 心跳管理现在激活函数不存在的客户端不会再插入了,而是返回错误 心跳管理强制退出函数现在支持套接字模式了 心跳管理离开方式增加了自定义状态参数 ====================================================================================== 血与荣誉网络通信引擎2018-4.30.0.1001 Build1116 服务组件 P2XP服务 修正用户查询信息返回值不正确的问题 删除了用户登出协议,不在启用 删除了多余的数据库路径配置代码 现在打包返回的错误的错误值将返回函数错误值 增加了会话文件增加删除和查询功能 现在服务支持接收客户端发送的文件并且记录了 P2XP组件 P2XP核心模块 增加了会话操作管理函数,支持管理临时会话文件 支持增加,删除,获取操作 现在投递文件协议将直接通过会话管理模块接受完成的文件了 自适应插入函数现在增加了插入路径的参数 P2XP协议模块 服务协议增加了用户查询打包协议函数 客户协议修改查询用户状态的协议方式 客户协议修改了请求文件函数协议支持附加文件数据了 系统协议打包函数删除了自动自加序列号的功能 P2XP分发模块 删除了包管理器的依赖,现在此模块将导出真实数据了 删除了对于OPENSSL和文件存储模块的依赖 文件缓存重写了,简化代码,现在支持多方同步投递数据组包 数据缓存删除了内部代码,不在使用,以后实现 帮助组件 组包模块 修改投递包到队列位置,统一单队列和KEY队列模式 修改投递包的流程,优化内部投递代码 现在数据包支持优先级投递方式(需要先添加优先级) 修改CHUNKED包回调函数的处理方式,现在新的CHUNK包不在放到队列了 修改CHUNKED包的回调函数,现在增加了新的参数表示当前CHUNK包状态 修正销毁包模块在某些时候崩溃的问题 核心组件 安全模块 更新BASE64编解码功能,优化输出数据拷贝代码 修正BASE64编码内存溢出的问题 服务模块 修正TCPIOCP接受数据后就关闭客户端连接的问题 更新TCPUDPIOCP的接受缓冲区大小,现在对大数据量处理更快了 池管理模块 修正销毁线程池在某些时候崩溃的问题 ====================================================================================== 血与荣誉网络通信引擎2018-4.29.0.1001 Build1112 服务组件 P2XP服务 完善部分日志打印信息,方便查看 修改编译变动信息 P2XP组件 P2XP核心模块 修正文件插入到数据库里面插入的表不正确的问题 修正查询接口导出参数不正确的问题 查询接口导出的数据现在对类型进行了导出 修正删除接口无法删除数据库中的记录问题 P2XP文件管理模块 文件数据管理增加了所属用户的字段 扩展管理类支持用户插入和导出响应的文件协议信息了 相同MD5的文件将不在插入 增加了一个新的文件所属用户属性 修正文件个数加减不起作用的问题 修正删除文件的一些问题,现在删除数据库也支持删除文件了 修正查询文件的一些问题 修正使用管理工具插入数据的时候MD5无法正常识别的问题 P2XP协议模块 现在服务查询文件和返回LAN接口不在修改协议头CODE值为OK了,保持原样 网络组件 网络API模块 删除了TLD库和代码,不在使用 修改了URL库代码函数集为DOMAIN名称,规范定义 解析URL代码重新,现在支持导出顶级域名,域名名称,和子域名以及域名本身 还支持导出域名的后续路径 支持电子邮件电子正确性判断 对模块错误定义进行了统一规范 增加了IP地址类库操作集,规范库之间的功能关系 增加了判断IP地址是否是IPV4的功能 增加了判断字符串是否是局域网地址的功能 字符串IPV4地址判断增加了导出当前地址分类类型的功能 核心组件 核心服务模块 套接字帮助删除了域名转IP函数初始判断是否为IP的功能 网络协议模块 SOCKS代理请求服务增加了参数,删除了自动判断域名和IP的功能 删除了对于基础库的依赖 基础组件 基础模块 字符串操作删除了判断是否是IPV4地址的函数功能 字符串操作删除了判断是否是局域网地址的函数功能 字符串操作删除了判断是否是EMAIL地址的函数功能 字符串操作增加了16进制和字符串互相转换的函数 ====================================================================================== 血与荣誉网络通信引擎2018-4.28.0.1001 Build1107 服务组件 P2XP服务 增加了对注册协议的支持 增加了对登录离开协议数据库操作设置的支持 添加了对注册和非注册用户登录开关的支持 P2XP组件 P2XP客户端模块 现在导出了获取客户端信息的函数 分离了创建客户端的时候登录协议的处理 P2XP核心服务模块 数据库核心增加了保存用户信息到数据库的功能 增加了操作用户表的函数集 修正音频表插入数据库插入成视频表里面的问题 修改P2XP核心模块的文件结构,更加规范 修正插入数据操作由于时间格式原因插入失败的问题 P2XP协议模块 分离了客户端协议和服务器协议结构 系统构建协议修改,现在可以构建一个完整的P2XP协议头 用户协议增加注册协议封装函数 修改了登录协议处理方式,现在使用P2XP用户信息协议和验证协议组成了 P2XP节点模块 修改获取用户信息的一处编译错误 网络组件 HTTP协议模块 修正HTTP协议模块某些时候资源冲突崩溃的问题 优化HTTP协议模块锁的使用,对多线程支持更好 修改发送函数内部代码,现在封装了发送头处理函数,修改了对关闭协议的处理方式 更新获取包功能,增加了随机获取客户端包和指定获取包的函数 获取随机包现在支持获取拥有完整包的客户端队列数据了 获取包现在获取的请求地址进行了分割,通过结构体导出了方法,URL和版本了 网络API模块 增加了64位网络字节序和主机字节序相互转换的函数 核心组件 核心服务模块 心跳服务增加了强制激活一个客户端离开的函数 ====================================================================================== 血与荣誉网络通信引擎2018-4.27.0.1001 Build1101 其他更新 协议头更新修正了部分类型在垮平台网络中大小不一致的问题 服务组件 P2XP服务 现在P2XP服务集成了TCP服务和包管理器服务 P2XP现在使用了线程池来处理业务 P2XP服务现在处理结果将返回到JSON里,协议头保持请求不变了 P2XP服务更新了连接和登录协议处理方式,优化了代码 P2XP组件 统一所有模块的错误码.现在使用规范定义了 P2XP协议模块 增加了支持处理结果返回JSON协议格式的函数 用户协议修改了心跳协议,将采用系统心跳协议处理 系统协议取消了计算包校验和功能 P2XP节点管理模块 优化锁的使用。解决锁使用不合理和性能问题 删除了添加和删除局域网地址函数,现在集成到添加删除P2XP客户端函数中了 P2XP核心服务模块 删除了通信功能(包管理,网络服务),由APP服务集成了 增加了数据连接池的功能,现在服务器采用MYSQL管理数据 支持图片,音视频,二进制文件等分类管理 支持自动识别后缀名来判断文件类型了 增加了管理函数类,集成了数据管理函数 P2XP文件管理模块 删除了服务器相关的函数,因为已经没有作用 客户端组件 客户端模块 UDP选择模型删除了多余的锁,这些锁会导致程序退出的时候异常 帮助组件 组模模块 获取包现在增加了尝试模式获取包方式 现在组包模块支持CHUNKED数据包模式了,CHUNKED将直接返回数据给客户 核心组件 核心服务模块 TCPIOCP现在发送函数自动重试有次数限制了,防止发送死锁 TCPIOCP优化了代码修正发送大数据包错乱的问题 TCPIOCP优化了多线程锁问题,解决部分资源冲突崩溃问题 ====================================================================================== 血与荣誉网络通信引擎2018-4.26.0.1001 Build1009 音视频组件 播放器模块--新增 增加了视频播放器的功能函数. 视频播放器支持创建一个新的窗口或者附加到指定窗口句柄播放 播放器支持创建,输入数据和关闭操作 视频编解码模块 流转换器现在是单独的函数组了 流转换器现在支持转换到指定图像格式 流转换器现在支持图像缩放了 帮助组件 组包模块 修正某些时候获取随机包函数会崩溃的问题 数据库模块 MYSQL增加了执行查询语句并且返回被影响行数的函数 MYSQL现在释放记录集内存将支持单独释放了 MYSQL修正有时候获取记录集和字段大小崩溃的问题 MYSQL修正客户端重连的时候操作引起崩溃的问题 核心组件 核心服务模块 TCPIOCP现在对于接受数据失败的情况进行了关闭客户端处理了 ====================================================================================== 血与荣誉网络通信引擎2018-4.25.0.1001 Build0926 其他更新 公用头文件设备类型增加了一个新类型 流媒体组件 RTMP客户端模块 现在RTMP客户端支持拉取一个视频流了 RTMP客户端支持拉取多个流 RTMP客户端拉取的流现在导出的是一个完成的帧 RTSP客户端模块 现在RTSP客户端支持拉取一个视频流了 RTSP客户端支持拉取多个流 RTSP客户端拉取的流现在导出的是一个完成的帧 帮助组件 数据库模块 MYSQL修正数据设置字符集的时候判断条件出错引起的问题 MYSQL现在自己设置字符集参数了 MYSQL修正关闭的时候崩溃的问题 MYSQL修改了查询获取记录集,修改相关函数使用,现在支持查询多个记录了 组包模块 优化组包模块内部逻辑,对锁和多线程进行了优化 现在组包模块需要为指定ID手动创建一个包管理器了 删除了设置组包器属性函数,现在继承在初始化函数中了 获取数据导出函数修改了函数接口顺序,方便使用 核心组件 核心服务模块 心跳管理现在支持套接字类型的心跳管理了 心跳管理修正导出函数没有正确导出的问题 心跳激活函数的后续心跳结构体参数可以为NULL了 安全模块 安全API函数的BASE64解码修正导出长度不正确的问题 安全API函数的BASE64编码优化使用方式 ====================================================================================== 血与荣誉网络通信引擎2018-4.24.0.1001 Build0916 流媒体组件 RTMP客户端模块 修改了RTMP推送模块名称和函数导出名称,防止歧义 更新了错误码,规范了定义 现在文件和实时流支持创建多个推送流了,并且是安全版本 文件实时流更新初始化获取流信息代码,现在使用了新版本函数 文件实时流现在没有找到音视频流将返回错误了 文件实时流推送的PTS和DTS处理优化 实时流修改了推送方式,现在不通过回调,而是通过主动推送方式推送数据了 实时流推送现在只支持yuv420p的数据 RTSP客户端模块 RTSP客户端增加了标准的文件推送流支持 RTSP客户端增加了标准的实时流推送支持 RTSP客户端增加了XPUSH推流协议的支持 RTSP服务器模块 修改了以前的RTSP模块现在为服务器模块 现在RTSP服务模块集成了RTSP实时流和文件流服务 现在RTSP文件和实时流推送支持HTTP协议请求RTSP服务了 RTSP文件服务现在支持删除流和用户以及销毁了 RTSP文件服务修正了无法加载文件的错误 RTSP文件服务器添加的流将通过后缀名自动识别推流类型了 RTSP文件模块 已经删除 RTSP包模块 已经删除 编解码组件 视频编解码模块 修正对于错误发生代码设置错乱的问题 修正编码模块对于与1080P等YUV数据编码崩溃的问题,修改了编码使用方式 编码器对于参数进行了优化,现在不在设置帧率 帮助模块 删除了桌面,音频和摄像头采集代码,现在集成到新的采集模块了 采集模块 采集桌面函数修正可能发生错误还返回YUV数据的问题 修正采集程序关闭的时候在某些情况下会崩溃的问题 屏幕采集现在支持创建多个采集程序了 音频采集现在支持创建多个采集程序了 摄像头采集现在支持创建多个采集程序了 帮助组件 组包模块 修正投递大数据包永远都无法组成功的问题 核心组件 核心服务模块 修正网络套接字真实发送大小判断永远都不会出错的问题 修正心跳服务对于时间判断不正确导致设置时间可能超过的问题 ====================================================================================== 血与荣誉网络通信引擎2018-4.23.0.1001 Build0904 其他更新 ffmpeg库已经升级到4.0.2版本 编解码组件 音频模块 音频编码器增加重采样功能,解决一些格式无法正确编码的问题 音频编模块增加了对MP3,G723,G726编码格式的支持 音频模块增加了获取模块支持所有编解码器的名称 音频编码初始化函数现在自适应码率和采样率了.简化函数使用 音频编码初始化修正申请内存失败导致一直初始化失败的问题 音频模块增加了新句柄参数用于至此多个操作 音频模块解码修正后续包无法正确解码的问题 音频模块导出错误现在统一了错误码和规范了定义 视频模块 删除了基础编码器类,不在使用 重写了视频文件转码功能类,现在可以自动识别转码文件格式了 增加了获取支持的编解码器列表的函数 流编解码器现在支持多个编解码同时工作了 流编码器初始化针对新版本进行了代码优化 流编码器参数现在支持一个参数表达YUV数据了 流解码器修正了无法初始化的问题 流解码器针对新版本优化了代码 流编解码器现在能够正确的编解码末尾的包了 流的解码器现在导出的回调增加了解码器信息的功能 视频模块导出错误现在统一了错误码和规范了定义 编解码帮助模块 导出错误现在统一了错误码和规范了定义 增加了获取ID3V2多媒体头的信息的功能函数 增加了设置音视频多媒体信息的功能函数 网络组件 网络接口模块 修改HTTP的POST和GET函数参数,现在支持HTTP鉴权了 帮助组件 日志模块 增加了获取距离上次日志打印间隔时间的功能 核心组件 核心服务模块 心跳增加了一个插入客户端函数 心跳激活功能修正插入的客户端后可能造成心跳异常的问题 心跳功能优化了锁的使用,现在对多线程支持更好了 心跳功能的获取超时功能函数现在不会自动删除客户端了 心跳功能函数修改,增加扩展函数,现在支持多个心跳管理端了 ====================================================================================== 血与荣誉网络通信引擎2018-4.22.0.1001 Build0824 其他更新 协议头更新 协议头更新了头和尾的定义名称,现在看起来没有歧义了 协议头更新了主协议类型定义名称,统一规范了名称 协议后台服务协议和流媒体以及文件传输协议,规范类型定义 修改心跳协议的设备和客户端类型现在调整到登录协议里面 增加了心跳协议子类型定义 由于协议头更新而造成的其他模块项目的代码更新 授权验证组件 客户端模块 修正发送数据删除和登录的协议发送大小不一致可能引起的问题 帮助组件 数据库模块 升级了SQLITE库的版本为3.25 组包模块 帮助API增加了通过现有协议头来打包数据的函数 帮助API修改了构建包函数,增加了两个参数,可以自定义协议类型了 客户端组件 SSL模块 更新统一错误码定义 客户端模块 更新统一了错误码定义 插件组件 核心插件模块 统一了错误码信息定义 现在插件函数支持带两个自定义参数执行了 现在插件支持添加自定义函数并且执行自定义函数了 现在初始化可以添加自定义输入输出参数了 增加了获取插件错误码的功能,现在函数执行失败统一返回模块里面的错误码 修改了添加模块函数功能,现在必须在加载的模块中添加函数了 修改了自动执行函数的流程规范,现在需要手动注册了 修正自动执行函数模式判断不正确会一直执行的问题 插件信息管理模块 统一了错误码信息定义 核心组件 池管理模块 线程池投递函数删除了一处多余的代码 ====================================================================================== 血与荣誉网络通信引擎2018-4.21.1.1001 Build0821 客户端组件 SSL模块 统一了客户端模块的错误码导出定义 SSL客户端增加扩展函数,现在支持多个SSL客户端运行了 SSL客户端对TLS和DTLS进行了升级,支持V1-V2版本了 SSL客户端大幅优化代码 SSL客户端删除了回调函数的支持 SSL客户端现在不在继承网络客户端功能,需要用户自己处理 SSL客户端现在接受数据需要主动接受了 SSL客户端初始化函数现在仅仅初始化安全属性了 SSL客户端增加了连接函数,用于SSL连接 SSL客户端证书现在为NULL也可以正常使用了 VPN客户端修正没有状态信息的问题,现在导出了完整的状态信息 VPN客户端修改了导出句柄方式,现在统一了导出句柄类型 VPN客户端删除了回调函数状态,现在统一通过状态函数获取 核心组件 安全服务模块 SSL服务对TLS和DTLS进行了升级,支持V1-V2版本了 SSL服务删除了网络相关的支持函数代码,现在需要用户自己实现了 SSL服务器修正在新版本库的情况下,SSL客户端与服务器无法继续使用的问题 SSL服务器现在增加了处理连接和接受数据的接口,用于用户使用 核心服务模块 短连接修改了使用方式和代码说明,以后叫轻量级服务 轻量级服务删除了一个多余的SELECT判断函数 轻量级服务器现在接受线程支持仅仅通知有数据到达了 轻量级服务器现在导出的回调增加了套接字句柄参数 ====================================================================================== 血与荣誉网络通信引擎2018-4.21.0.1001 Build0817 其他更新 更新由于创建句柄函数接口更新导致的其他调用者的代码更新 客户端组件 客户端模块 删除了DNS查询功能,这个功能与核心引擎的获取主机信息功能冲突 UDP扩展函数删除初始化函数,现在与创建绑定到一起了 UDP修正回调函数自定义参数没有效果的问题 UDP基础与扩展代码库现在分开为两个文件了 UDP启用回调接受数据的时候错误现在会触发错误了 UDP的回调现在增加了返回接受到数据的客户端地址信息了 API组件 SDK模块 文件SDK删除了文件加载到内存运行功能函数 文件SDK增加了替换指定文件的内容的功能函数 帮助组件 XML模块 修正一处多余的加载头文件而导致编译出现问题的情况 基础组件 基础模块 修正了一些有无符号整数转换的一些警告信息 更新字符串功能类的分割函数,现在采用线程安全版本了 算法库模块 修正了一些有无符号整数转换的一些警告信息 核心组件 NETXAPI模块 修改导出的流量信息为结构体,内容更加多了 核心服务模块 获取主机地址信息修改函数导出的接口的参数使用方式 删除了获取网卡状态参数的功能,与NETXAPI里面的功能重复了 获取网络表的函数现在修改成获取网络参数信息,并且删除了部分重复功能 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.20.2.1001 Build0814 帮助组件 日志模块 更新日志模块错误定义,修正定义的类型已经存在的问题 日志模块现在支持设置输出的背景色和字体颜色了 修正网络日志功能开关判断错误而造成的问题 修正日志系统原行打印不成功的问题 修正系统严重错误打印失败的问题 日志模块优化多线程打印,现在是线程安全版本了 现在发送的网络日志将不带换行符了 二进制打包模块 修正内存打包解压失败的问题 优化了代码的一些逻辑问题 增加了数据打乱功能,现在打包的文件内容可以随机打乱防止破解了 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.20.1.1001 Build0810 客户端组件 客户端模块 UDT现在支持TCP和UDP模式了 UDT删除了接受和发送文件功能函数 UDT修正网络模型使用错误导致的无法继续操作的问题 基础组件 基础模块 句柄管理器删除了一个没有使用的函数 核心组件 网络XAPI模块 更新了错误导出定义,规范了错误码和定义 增加了网络限速功能,通过QOS实现,支持单独连接限速和全局限速 获取网络流量功能函数重写,现在简化了使用步骤和优化了代码 核心服务模块 NETSOCKET增加新的函数,可以忽略TCP底层组包和绕过路由器快速投递包 UDT删除了线程池功能 UDT删除了发送和接受文件函数功能.不在使用此接口 UDT修正超过指定客户端连接后服务器会无响应的问题 UDT优化了内部代码和接口函数,现在不在使用索引函数了 UDT优化了锁的使用方式 UDT现在支持TCP模式和UDP模式了 UDT现在支持自动销毁客户端资源了 UDT修正网络模型使用问题造成无法响应服务的问题 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.20.0.1001 Build0802 其他更新 协议头增加了XMQ协议的定义 网络组件 HTTP服务模块 现在HTTP服务模块支持注册自定义处理程序了(微服务) HTTP微服务功能支持删除和自动处理功能 系统组件 SDK模块 硬件SDK修正获取MAC地址无效的问题 硬件SDK的BIOS序列号如果无法获取将不在有内容了 帮助组件 组包模块 数据包修正一处非完整包还包个数还+1的情况 数据包修正组好的包等待事件不触发的问题 数据包支持新的模式,单队列模式组包了 数据包修正获取包协议头为NULL崩溃的问题 数据包等待事件功能支持超时了 获取错误定义的导出函数名称已经被修改 修改了错误码定义,统一规范了错误导出 单队列模式组包可以按照顺序压入和取出一个完成的包 消息组件 消息队列模块 修改消息协议JSON为新的数据结构体方式来传递 删除了处理消息的时候多余的协议类型处理问题 核心组件 核心服务模块 TCPIOCP增加心跳开启关闭选项,现在默认关闭 管道执行程序函数支持导出获取大小了 管道执行程序函数修正无法获取完整数据的问题 管道执行程序函数现在代码功能与LINUX同步了 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.19.0.1001 Build0729 服务程序 修改所有服务程序代码,更新为最新XLOG版本使用方式 更新服务 更新服务日志打印不显示问题修正 后台服务 后台服务日志打印不显示问题修正 消息服务 消息服务删除了XDDS相关代码 服务管理组件 进程管理模块 修正64位服务模块加载路径问题 更新编译安装脚本,增加了缺失的模块拷贝功能 消息组件 消息分发模块 修改了消息分发模块的使用流程和规范,大量修改代码 增加了域组播管理功能,现在不同域UDP使用不同组播地址了 现在主题通过不同端口来区分了,模块会自动分配端口 公用回调函数现在可以获取通知消息了(发布者创建,域删除,主题删除) 公用函数优化了初始化使用方式 公用类现在创建域和主题会先搜索局域网下的信息才确定创建规则 发布者创建的时候会先确定局域网的相关信息在创建了 订阅者创建的时候会先确定局域网中相关信息在创建,如果没有,也可以创建成功 帮助组件 组包模块 组包模块随机取功能优化,单独取更快了 网络组件 HTTP服务模块 修正发送数据函数只发送HTTP的时候崩溃的问题 核心组件 核心服务模块 网络套接字类绑定服务的时候支持设置是否监听了 广播发送者修正端口存在无法初始化的问题 UDPIOCP服务调整部分代码,修正启动失败和一处内存泄漏问题 UDPIOCP优化销毁逻辑,现在能够正确的退出了 TCPIOCP优化销毁逻辑,现在能够正确的退出了 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.18.0.1001 Build0727 其他更新 协议头删除了自定义协议并且调整了协议类型 消息组件 消息分发模块 重构了消息分发模块 修改了消息分发模块名的名称,规范命名规则 消息分发模块不在需要服务器了,删除了服务器相关代码 XDDS现在可以在用户删除域和主题的时候通知局域网下面的用户了 XDDS修改了端口获取和创建方式 XDDS协议头进行了优化,支持获取主题创建者 XDDS的可靠性和非可靠性现在靠主题管理 XDDS现在不需要读者和写者的管理了,删除了相关代码 消息队列模块 规范统一消息队列模块命名规则 修改消息队列模块名称 修改消息队列模块导出函数名以及文件名等信息 帮助组件 包管理模块 修改Make函数集合名为Data,规范函数导出名称 修正包管理模块在组包的时候会丢失部分数据导致的问题 删除了自定义包功能,以后不在启用,过于冗余 删除了拆包类,现在里面的函数集成在数据包管理类中 核心组件 核心服务模块 广播接受数据函数导出了一个新的发送者的地址信息参数 TCPSELECT增加了发送数据给所有客户端的函数 读取数据CMD执行命令函数修正了数据被覆盖的情况,修改了使用方式 判断端口是否修改了使用方式,现在可以指定端口协议类型了 SOCKETHELP类增加了获取端口状态的功能 SOCKETHELP获取网卡地址的时候现在会跳过本地回环地址了 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.17.0.1001 Build0721 其他更新 协议头更新,协议头增加了网络日志协议 网络组件 UPNP模块发布模块与LINUX版本同步了 GSM模块修改了文件夹名称,统一规范 基础组件 基础模块 增加了文件操作功能类,增加了改变文件大小函数,与LINUX下的一样效果 帮助组件 日志模块 日志模块现在支持网络日志了,可以发送日志到指定服务器,需要专用协议支持 日志模块现在支持写日志到调试器了 核心组件 池管理模块 完成了内存池模块函数 删除了部分函数,简化使用 现在内存池支持内存预测技术了 内存池现在支持小块内存预测释放了 核心服务模块 高速文件缓存服务修正写内容的时候回调为空崩溃的问题 高速文件缓存服务修正改变文件大小无效的问题,并且优化逻辑 高速文件缓存服务扩展了回调函数信息 数据回溯服务现在支持把数据保存为文件了 数据回溯服务支持在退出的时候删除数据文件或者保留数据文件 数据回溯服务保存的文件支持用户设置目录,文件名按照系统统一规划 数据回溯服务现在对于都用完的情况不会再重新构建队列了,加快访问速度 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.16.0.1001 Build0719 应用管理服务 修正日志系统更新造成无法编译的问题的更新 RFC组件 电子邮件模块 修改电子邮件初始化流程,修正一些函数编码不合理的情况 更新电子邮件模块错误码,统一了错误码规范 帮助组件 XML模块修改了文件夹代码名称,统一规范 脚本模块 修改了文件夹代码名称,统一规范 删除了X脚本引擎相关代码和模块,不在启用 数据库模块 修改了文件夹代码名称,统一规范 MYSQL操作大多数函数进行了重构,现在使用更加优化和简便 MYSQL修正自动重连选项不生效的问题 MYSQL更新现在LINUX版本默认字符集为UTF8了 MYSQL删除了参数集函数 MYSQL修改了执行查询语句的流程和函数 MYSQL增加了执行语句转换函数,方便对特殊字符进行处理 SQLITE数据库修改了函数名称,统一了函数调用名 数据库模块错误码进行了统一 日志模块 现在日志模块支持多个日志系统同时运行了 修改日志模块部分调用函数使用方式 增加日志模块打印日志空间内存大小 日志模块修改了错误码导出的定义,统一了错误码 基础组件 基础模块 句柄扩展管理类优化了代码结构 句柄扩展管理类现在错误已经和基础模块集合在一起了 句柄扩展管理类现在已不公开使用了 句柄管理类现在对多线程支持更好了 句柄管理类修改优化了部分代码,更加简洁 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.15.0.1001 Build0712 例子更新 增加了内存池使用例子 帮助组件 组包模块 删除了内存池模块的依赖 核心组件 核心服务模块 错误定义现在进行了统一 更新高速缓存系统定义。现在修改为高速文件缓存了 数据回溯队列缓冲服务增加 回溯队列缓冲服务支持预加载内存模式,加速访问 回溯队列缓冲服务支持发送和接受回溯数据队列了 回溯队列缓冲服务支持获取指定可用队列中的第几个数据包了 回溯队列缓冲服支持设定队列内存大小,个数和满了后的策略 池管理模块 内存池代码被重构了 内存池模块代码支持分块独立块申请内存 内存池支持大内存申请和释放 内存池里面申请的内存支持内存对齐 内存池里面申请的内存将按照系统分页大小申请内存 内存池支持销毁的时候用户预先处理函数 线程池现在支持竞争模式了 线程池竞争模式适合只有一个任务队列的情况 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.14.2.1001 Build0703 网络组件 HTTP模块 增加了配置信息功能类,完善了MIME和CODE信息并且支持用户自定义配置信息发送了 增加了几个新接口用户配合用户使用网络服务接口 现在HTTP服务不自己压缩数据,统一交给调用者压缩 现在HTTP服务将不会自定释放客户端资源了,Connection: close类型需要用户自己处理 现在HTTP模块不在集成网络服务,需要用户自己配合网络服务模块使用 现在发送支持CHUNKED模式发送数据了 修正发送过大数据包内存溢出的问题 修正状态码错误无法发送后续数据的问题 修正发送自定义头数据的时候造成HTTP协议错乱的问题 修正获取客户端的请求内容后数据一只存在的问题 优化了HTTP服务锁的性能,现在读写更快了 核心组件 池管理模块 修正获取最后错误信息导出不成功的问题 修正线程池状态判断和统计状态数量不正确的问题 修正线程池智能调度功能不准备的问题 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.14.1.1001 Build0520 APP服务管理 进程守护服务 修改了发布模块文件夹名称 增加了模块复制脚本用于拷贝需要的依赖模块 修正了进程服务管理不起作用的问题 修正退出服务可能引发崩溃的问题 修正在正常处理进程的时候没有日志打印的问题 帮助组件 组包模块 更新组包模块错误码定义,规范了错误 现在组包事件等待在没有包被激活的时候讲返回错误 完善了等待事件和初始化事件错误码返回功能 WIN组件 SDK模块 删除了SDK模块的WEBSDK功能函数,作用不大 删除了播放音频的功能类,并且删除了与之相关的功能 删除了文件SDK稀疏文件类,现在集成到FILESDK里面了,并且创建更加简单 删除了不需要的注册管理类定义 删除了不需要的进程运行环境定义 进程SDK增加了判断指定进程是否存在的接口 进程SDK增加了关闭指定进程名称的功能 更新了错误导出定义,规范了错误 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.14.0.1001 Build0517 例子更新 调整RFCEmail目录结构 增加了SOCKS5代理服务器使用例子 基础组件 基础模块 句柄创建工具支持创建的句柄范围设置了 WIN组件 崩溃报告模块 删除了异常过滤功能相关函数和信息 修正了安装报告程序无法找到导致无法初始化的问题 RFC组件 代理服务模块 SOCKS5代理重构了代码,进行了大量优化 SOCKS5代理增加了一个新的函数可以关闭指定客户端 SOCKS5代理现在可以让用户处理用户登录事件了 SOCKS5代理支持匿名和用户密码方式登录服务了 SOCKS5代理支持CONNECT和BIND协议了 更新了错误定义,规范了错误码和错误获取函数 核心组件 核心服务模块 优化IOCP销毁逻辑,减少销毁时间 修正IOCP用户登录回调触发在有时候会在接受回调过后触发的问题 网络通用函数修正关闭套接字的时候判断逻辑不正确的问题 网络通用函数发送数据现在无论成功与否都会导出发送的大小了 网络通信函数完善了设置非阻塞和超时以及心跳函数代码 协议模块 增加了RFC SOCKS5协议定义 增加了SOCKS5协议封包解包处理函数功能集,支持一整套SOCKS5协议 规范了错误码定义 删除了DNS服务协议处理函数相关信息,不在需要 更新获取错误码函数,修正无法使用和规范命名 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.13.3.1001 Build0504 帮助组件 XML模块 重构了XML解析器部分代码,现在更方便更快捷,内核部分代码全部重构 导出函数被简化了,部分导出函数有修改 完善了错误码信息定义 验证组件 加解密验证模块 修改由于XML模块函数变动导致的修改 增加了一条新的版本信息到CDKey中 完善了错误码信息定义 客户端模块 修改由于CDKEY变动导致的修改 核心组件 OPENSSL模块 修正加解密API函数解密的时候可能导出的乱码信息 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.13.2.1001 Build0428 网络组件 HTTP服务模块 修正分隔符错误导致HTTP服务器无法处理数据的问题 修正拷贝HTTP请求头的时候可能导致的异常 核心组件 核心服务模块 更新广播发送函数支持多网卡环境发送广播包 消息组件 消息分发模块 更新了公用初始化函数支持指定网卡发送广播 现在公用初始化函数支持默认参数了 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.13.1.1001 Build0427 其他更新 修正json64位输出的中文字符串乱码的问题 SDK组件 API模块 删除了时间结构体,与基础库重复了 更新重启进程函数,修正了不能注册自定义软件的问题 更新重启进程函数,优化了代码使用方法,不在使用动态方式加载函数了 网络组件 HTTP模块 现在独立了一个帮助API函数组,更加方便用户使用HTTP服务 更新了错误定义,规范了错误的定义形式 修正大数据包组包长度判断逻辑处理错误 修正投递的包不是完整包组包永远无法组包的问题 修正无法处理二进制后续的HTTP数据包的问题 修正后续数据包是短连接close选项的时候不起作用的问题 更新获取和投递数据方式,现在投递在头部,获取在尾部 核心组件 核心服务模块 更新短连接功能函数,对锁进行了优化 修正短链接服务器的一个资源冲突问题 基础组件 算法模块 增加了一个新的匹配算法函数,比C自带的更快更好用 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.13.0.1001 Build0421 核心组件 核心服务模块 删除了tcmalloc的依赖 WINApi组件 SDK模块 简化CPU信息CPU序列号获取代码 修改获取CPU和硬盘信息的接口,现在不能获取序列号了 增加了一个新的函数,现在这个函数可以获取所有硬件的序列号 删除了下载地址转换功能函数,已经没有了意义 移动硬件SDK的获取内存使用率到系统SDK下面 创建视频模块 这个模块已经被删除,不会启用,以后视频音频处理都在NetEngine_AvCoder组件中 核心组件 核心服务模块 更新执行命令获取返回的数据函数,增加了一个获取多少行的接口 基础组件 基础模块 字符串功能增加了一个删除字符串指定字符的功能函数 插件组件 插件信息模块 修改了信息模块的函数组名称,简化了函数名 网络组件 后台模块 获取信息函数增加了硬件序列号的获取信息 获取信息函数增加了系统信息的获取功能 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.12.1.1001 Build0405 例子更新 调整线程池库和网络openssl库例子目录 对安全库例子代码进行更新,适应最新版本 核心组件 池管理模块 连接池现在对原始套接字进行了V4和V6版本协议划分 线程池修正销毁的时候没有删除线程资源的情况 导出的错误码现在更加规范了 核心服务模块 修改了部分导出错误码,规范了定义 iocp的扩展错误导出定义进行了规范 安全服务模块 现在RSA可以通过私钥创建多个公钥了,修正以前的描述错误并且不能生成多个公钥的问题 现在RSA可以支持对私钥进行加密了 修正信息摘要算法更新底层库后无法使用的问题 修正签名和验证签名更新底层库后无法使用的问题 修正数字签名更新底层库后无法使用的问题 现在安全服务模块的错误码定义进行了统一 修正密码加密算法函数设置加密类型无效的问题 基础组件 算法模块 修改了导出的错误码定义,现在统一了错误定义的方式 基础模块 修改了导出的错误码定义,现在统一了错误定义的方式 句柄功能类删除了不需要的错误定义 句柄功能类生成随机句柄的方式修改 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.12.0.1001 Build0328 例子更新 增加了cstl map list容器使用例子 基础库的例子现在单独在一个文件夹中了 http操作例子增加了gzip解压的示例代码 其他更新 公用头文件删除了dll操作导出输入定义 帮助组件 解压缩模块 增加了GZIP格式的压缩和解压功能的支持 网络组件 网络API模块 删除了http服务器功能和代码,现在这个模块不需要依赖其他模块了 http服务器 模块变动,功能和以前的http服务器一样 发送函数增加了gzip压缩数据的支持 修正初始化注释描述错误 基础组件 算法模块 删除了权限算法功能类 修改了获取错误码函数使用方式,增加了参数 修改了算法函数的名称 增加了c版本stl使用的list hash_map功能函数 增加了STL迭代器操作和pair操作函数 list支持头端和尾端插入数据和弹出数据 list和map支持拷贝数据,判断空,获取个数,比较,清理 map支持pair操作,支持find找到数据,支持key value方式操作数据 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.11.0.1001 Build0323 客户端组件 客户端模块 更新关闭线程执行时间,减少CPU占用 RFC组件 WEBSOCKET模块 对导出函数进行了注释 存储组件 Swift模块 下载函数不在进行gbk到utf8的转换了,如果需要你们要自己转换 导出的函数现在添加了注释了 删除了一个函数,这个函数与其他函数冲突了 帮助组件 组包模块 现在组包模块可以对组包数据包超时时间进行设置了 优化了一处只有协议头的时候逻辑处理流程 核心组件 核心模块 同步LINUX发送者的loop创建参数,但是没有效果 对创建发送和接受者的注释进行了修改,明确loop的一些行为 加解密模块 重构了加解密模块,现在加解密模块的函数都已经改动 现在加解密模块不在依赖核心服务模块了 删除了AES加解密功能函数 删除了MARS加解密功能函数 删除了TEA加解密功能函数 删除了WINDOWS加解密库错误码 SSL服务器优化初始化网络参数个数和使用方式 SSL服务器增加了关闭指定客户端的功能 SSL服务器发送数据优化参数和提示信息 SSL服务器现在客户端离开会自动处理销毁相关资源了 修改了部分源代码文件和命名空间,更加贴合风格 新增加了数据编码器功能类,URL编解码和CRC32编解码现在移动到这个里面 ====================================================================================== 血与荣誉网络通信引擎2018RL-4.10.0.1001 Build0223 其他更新 协议头更新 增加了网络验证协议和子协议以及错误协议 修正部分编译器警告 更新了CURL库版本,所依赖的项目更新(下载模块,电子邮件模块,HTTP模块,存储模块) OPENSSL库文件名称变动,请注意使用方式,现在OPENSSL不在依赖C运行库了 服务更新 后台服务 更新后台服务依赖的模块结构位置和版本 增加了安装拷贝模块脚本,增加了发布的版本目录结构 增加了配置文件选项 P2XP服务 增加了安装拷贝模块脚本,增加了发布的版本目录结构 更新模块 修改了帮助提示-m参数的说明 验证服务 验证服务增加了发送邮件回复地址配置 验证服务增加了发送邮件找回密码的邮件主题配置 验证服务事件回调信息函数修改了处理方法 WINAPI组件 调试模块 删除了VLD库的支持和相关代码,不在启用 网络组件 UPNP模块 删除了NATPMP代码,现在不在启用,这个代码功能部分重复了 删除了NATPMP库的支持,不在需要 后台模块 更新后台模块提交系统信息函数,现在支持自定义提交的邮件信息了 删除了后台模块的两个函数,不需要的功能 核心组件 安全模块 删除了WINCRYPT相关代码和文件,不在使用 现在API函数不在启用WINDOWS下特定的函数库了 更新OPENSSL版本并且修改了内部EVP加解密使用方式 删除了DSS和MDC2加解密算法 修改了SHA加解密算法为SHA512 安全通信删除了V2,V3指定的版本,现在只需要V23自适应了 网络Api模块 删除了packet库的支持,不在需要 重新枚举局域网计算机类型获取方式,现在是局域网所有资源都能获取了 客户端组件 安全通信模块 删除了V2,V3 SSL指定协议版本通信方式,现在只需要启用V23自适应通信即可 验证组件 验证服务模块 协议部分重构,现在协议头采用标准协议头了,后续跟上验证协议 数据库用户表增加了新的电子邮件地址字段 修正数据库查询用户和充值卡的时候可能造成的内存泄漏问题 电子邮件函数扩展了支持开启关闭的选项 服务的消息处理函数统一了处理方式,代码更加简洁 服务的消息处理函数统一了错误返回,在标准协议头文件里面定义了 现在登录消息的处理不在返回其他附加的日期信息了,只是成功和失败 发送邮件函数简化了参数 用户超时检测更改了返回协议处理方式 验证客户端模块 现在采用标准协议头了 更新协议名称修改造成的代码问题 修正读取数据内存申请释放不匹配的问题 简化处理数据任务代码逻辑 ====================================================================================== 血与荣誉网络通信引擎2018RC-4.2.0.1001 Build0213 其他更新 协议头更新,修改为GBK编码 服务更新 消息服务 删除了多余的广播代码 现在能够正常处理服务退出事件了 过滤了一个没有包的获取错误 客户端组件 客户端模块 修正TCPSELECTEX设置接受模式函数设置后丢失数据的问题 帮助组件 组包模块 修正组包器在删除和清理一个队列后,造成事件管理一致触发的问题 修正用户离开没有正确计数导致事件一直触发的问题 消息服务组件 数据分发模块 公用函数下删除了心跳服务函数,现在发布者和订阅者都不需要心跳了 公用函数初始化没有设置回调模式导致数据接受失败的问题 公用函数修正自动查找服务器地址失败的问题 服务函数创建发布者不需要在分配任何资源了。由创建订阅者来管理 服务函数更新初始化参数,修正缺少服务器地址而导致广播地址错误的问题 服务函数删除主题和域的时候不会在释放端口了,由删除发布者或者订阅者来释放 服务函数增加了一个组包返回函数 发布者和订阅者重构了函数使用方式,现在能够创建发布者和订阅者后能够正常关联数据了 发布者和订阅者现在能够正常进行UDP数据通信了 修改数据分发模块的名称,现在和LINUX名称一样了 核心组件 池管理模块 优化线程池执行任务线程的一处多余代码 核心服务模块 修正组播发送和接受创建导出的句柄不正确的问题 修正组播发布者的数据本地接受不到的问题 ====================================================================================== 血与荣誉网络通信引擎2018BT-4.1.0.1001 Build0209 例子更新 更新了验证服务,更新到支持最新版本引擎API 更新了P2XP服务,更新到支持最新版本引擎API 更新了流媒体服务,更新到支持最新版本引擎API 更新了更新服务,更新到支持最新版本引擎API 消息队列服务 消息队列服务更新增加了DDS功能 消息队列服务增加了组包器功能,支持TCP和UDP组包 消息队列增加了线程池支持 DDS功能支持创建发布者,订阅者,主题和域,也支持删除他们 DDS客户端支持不自动查找服务器地址。 DDS支持反馈发布者和订阅者主题相关的信息 帮助组件 日志模块 修正日志非分后打开文件标记不正确的问题 组包模块 修正组包模块在组包还没投递到队列的情况下就被触发可用状态的问题 修正组包模块输入数据缓冲区大小不生效的问题 网络组件 HTTP网络模块 HTTP服务器增加了一个新的处理函数,可以分割导出URL头信息 消息组件 消息队列模块-重构 现在服务处理不在集成组包器的模块了,由上层用户提供 现在服务处理不在使用自定义协议,使用专用协议来处理消息队列了 返回的数据错误不在单独列出,而是模块的处理错误了 服务处理函数增加了删除一个指定消息的函数 服务处理现在支持3个匿名队列和3个带KEY值队列 现在投递的附加协议不需要带是否为投递或取出了,根据协议头定义 子协议的IP字段修改了定义的意义 现在消息队列服务不在需要回调函数,已经删除,意味上层用户要自己管理多线程性能 协议功能现在删除了组包返回函数,集成在nopacket函数中了 现在消息队列模块不在依赖其他库了 消息分发模块 对创建主题功能服务函数进行修改,增加了导出主题名称的参数 对删除主题功能服务函数进行修改,现在传递的参数二是缓冲区而不是协议,并且可以导出主题名 ====================================================================================== 血与荣誉网络通信引擎2018PT4-4.0.4.1001 Build0205 例子更新 增加了核心库的SPI安装的LSP模块代码例子 其他更新 协议头中不在需要字符编码的字段了,已经删除 扩展了协议头的XDDS协议 数据服务组件 数据分发模块 服务函数增加了对广播协议请求处理并且返回地址协议的功能 公用函数增加了可以不填写服务端地址而自动发现服务器的功能 公用函数修正了创建域和主题没有判断是否已经存在导致的问题 网络组件 UPNP模块 修正UPNP添加应用程序名称显示不正确的问题 修正UPNP获取状态不正确返回成功的问题 更新初始化在获取设备信息判断不正确导致的代码问题 核心组件 核心服务模块 更新广播接受者,现在可以支持绑定相同端口了 SPI服务重构,优化了SPI代码,现在更加简洁 SPI接口重写了,不在使用GUID作为标识符了,采用协议名称 基础组件 基础模块 更新基础模块库目录名称,与头文件同步 ====================================================================================== 血与荣誉网络通信引擎2018PT3-4.0.3.1001 Build0124 其他更新 由于TCPSELECT服务导出函数修改导致的其他库代码修改 核心组件更新了文件夹名称,与LINUX同步 数据服务组件 数据分发模块 数据分发支持TCP模式了,TCP模式支持跨网段,UDP不支持 现在发布者和订阅者都拥有了共有函数功能集 现在域的创建和删除都在这个功能集中 现在主题的创建和删除都在这个功能集中 支持获得网络的句柄和判断一个主题和域ID是否存在 发布者现在需要管理创建发布者和删除发布者了 发布者现在需要创建写者和删除写者 发布者发布数据现在支持发布所有关联的订阅者数据了 订阅者现在需要管理创建订阅者和删除订阅者了 订阅者现在需要创建读者和删除读者 订阅者读取数据方式有所修改,需要指定读者并且提供正确参数 服务管理支持域的创建和删除了 服务管理支持主题的创建和删除了 服务管理支持支持发布者和订阅者的创建和删除了 内部创建发布者修改流程,现在所有发布者和订阅者都需要创建域和主题才能继续 基础组件 基础模块 句柄管理器优化创建句柄函数,删除不需要的代码 句柄管理器修正不会创建相同的句柄了 核心组件 核心服务模块 TCPSELECT删除了内部发送线程处理功能和回调相关函数,大幅优化代码 TCPSELECT现在发送数据不支持一次发送给所有客户端了 TCPSELECT发送函数的参数优化,不在需要NAGLE算法等支持 TCPSELECT删除了发送停止函数,不在需要 TCPSELECT增加获取自身服务地址信息的函数 ====================================================================================== 血与荣誉网络通信引擎2018PT2-4.0.2.1001 Build0117 其他更新 由于核心模块导出函数修改导致的其他项目更新 由于客户端模块导出函数修改导致的其他项目更新 通用服务组件:增加 可以获取当前系统版本号 可以管理要运行的服务进程 可以区分要自动启动的服务还是进程,并且自动执行相关命令 支持通过网络获取执行的命令功能 支持每隔指定时间(秒)来检测服务是否存在并且自动运行 执行执行失败检测,失败次数超过会自动关闭这个功能 支持设置间隔指定时间(秒)然后重新启动指定进程 客户端组件 客户端模块 现在客户端模块的TCPSELECT组函数不会在内部维护套接字列表了 TCPSELECT不在支持关闭全部使用的套接字列表了 核心组件 核心服务模块: TCPEIOCP发送数据的时候对于网络重试请求处理不当的问题修正 TCPEIOCP增加了扩展函数组,现在支持创建多个TCPEPOLL服务器了 网络帮助函数组增加了域名转IP地址的功能 网络帮助增加了获取本地IP地址网卡接口信息的功能,并且支持判断是否为本地IP地址 RFC组件 代理服务模块 更新SOCKS代理服务导出的API函数,规范API命名 代理服务器增加了隧道代理服务开发 隧道代理支持HTTP和HTTPS转发 隧道代理支持用户验证 隧道代理支持开发者获取转发流量信息 流媒体组件 删除了流媒体服务器模块,这个模块与其他模块功能重复 文件流媒体模块:增加 这个模块继承了流媒体模块的文件推送功能 更新增加了不分推送流媒体协议格式,具体支持文件格式请查看导出的头文件 基础组件 基础模块 删除了判断是否为本地IP地址的函数 字符串处理UNICODE转ANSI现在需要用户自己释放返回的空间了 字符串处理UNICODE转ANSI现在支持返回转换后字符串长度了 字符串处理ANSI转现在需要用户自己释放返回的空间了 字符串处理ANSI转UNICODE现在支持返回转换后字符串长度了 字符串转换函数现在返回的内存空间需要用户自己删除 ====================================================================================== 血与荣誉网络通信引擎2018PT1-4.0.1.1001 Build0107 其他更新 更新编译器到VC2017 协议头文件的协议头定义的头和尾修改了定义名称 协议头增加了DDS分发数据协议 其他库编译的时候由于部分头文件修改而造成的编译失败的问题 数据服务组件 调整消息队列模块到此目录 消息队列模块 消息队列模块修改了编译出来的名称 数据分发模块:增加 增加了订阅者和发布者与服务协议处理器的支持 发布者和订阅者都可以自动管理与服务器的连接 发布者可以创建主题并且自动适配地址和端口 发布者可以发送局域网消息给订阅者 发布者可以删除一个主题 订阅者可以请求一个主题并且可以支持无主题请求 订阅者可以读取数据并且过滤本地消息 订阅者可以离开一个数据发布的主题 协议处理可以管理分配的端口和数据发布地址 协议管理可以处理发布者请求创建的主题了 协议管理可以处理订阅者请求主题的协议 协议管理可以删除自身的一个主题 协议管理可以获取一个主题相关的信息 协议管理提供了打包协议数据的函数 网络组件 消息队列模块 删除消息队列模块服务,移动到别处 客户端组件 客户端模块 修改了导出的函数和错误文件名的命名规则 TCPSELECT增加启动心跳功能的函数 核心组件 核心服务模块 广播服务删除了回调函数,不在支持回调模式了 广播服务优化了函数的使用方式,只需要5个函数即可 修正广播服务的接受数据问题 调整广播服务函数接口,优化接口调用,解决以前不合理的地方 组播服务不在使用回调函数 组播服务优化代码结构,减少多余的代码 修改了组播服务函数调用方式,更加简洁 增加了心跳管理函数,支持回调和主动模式获取心跳超时 支持设置超时时间和次数来确定心跳超时 修改了导出函数和错误文件的命名 TCPEIOCP优化发送数据端口数据的时候多余的操作 TCPEIOCP优化发送数据的时候对大数据循环发送多余的函数 基础组件 基础模块 现在基础模块不在需要使用UUID了,删除了这个的支持 ====================================================================================== 血与荣誉网络通信引擎2017-3.30.1.1001 Build1206 服务更新 验证服务 现在生成的卡号可以复制了 现在客户端的网络连接和断开操作会自动提示了 验证组件 客户端模块 修正找回密码等操作由于验证问题导致的问题 发送数据对发送的内容缓冲区进行了正常的初始化操作 序列号模块 增加了对卡类型的定义,方便大家使用 服务器模块 反驳的发送不会在发送大缓冲区了 数据协议处理不在需要开辟新的内存了 现在对于付费用户的余额不足被提出消息能够正常提示了 核心组件 核心模块 修正复制到剪贴板失败的问题 TCPSELECT现在发送数据会按照正常大小发送了 TCPSELECT现在销毁会结束关闭线程了 TCPSELECT修正读取事件IO对缓冲区读取失败的问题 ====================================================================================== 血与荣誉网络通信引擎2017-3.29.1.1001 Build1124 网络组件 网络帮助模块 现在简单的HTTP服务器在返回数据的时候如果只有HTTP那么会带上长度0的字段了 帮助组件 组包模块 修正文件组包模块在接受数据的时候对于小文件判断不正确导致的问题 日志模块 修正自动备份日志文件的时候大小截断的问题 核心组件 池管理模块 修正线程池退出的时候可能引起DMP的问题 下载组件 下载模块 修正HTTP和FTP释放下载资源的时候引起的崩溃问题 ====================================================================================== 血与荣誉网络通信引擎2017-3.28.2.1001 Build0916 网络组件 网络API模块 修正内部关闭客户端资源可能导致会卡死的问题 存储组件 SWIFT存储模块 修正下载的时候由于路径处理导致下载失败的问题 SDK组件 API模块 修正删除多级目录不成功的问题 现在删除多级目录功能修改可以不删除主目录了 ====================================================================================== 血与荣誉网络通信引擎2017-3.28.1.1001 Build0902 例子更新 增加了http post 使用例子 服务组件 验证服务 验证服务现在启动服务没有序列号将不会再提示消息了 验证服务调整序列卡管理窗口序列号列表长度 修正启动服务不成功的问题 授权组件 序列号模块 序列号生成解决因为安全函数崩溃的问题 帮助组件 数据库模块 句柄将使用XNETHANDLE,不在使用新的类型 SQLITE功能更新了关联句柄管理方式.优化资源锁使用 SQLITE的错误码优化,现在更加直观 SQLITE文件判断采用了C语言,不在使用WINAPI 网络组件 网络帮助模块 HTTP简单服务现在对于关联数据申请单独空间 解决申请BODY内存不一致导致的问题 基础组件 基础模块 时间功能集格式化SQL时间修正缓冲区大小不一致造成的问题 时间格式SQL的函数现在第二个参数可以为NULL 核心组件 核心模块 更新TCPSELECT短连接函数,现在退出消息会优先通知在关闭资源 现在短连接不在使用超时断开连接,而是用手动控制了,解决HTTP长连接问题 现在对每个客户端进行线程控制而不统一使用一个线程了 解决关闭资源由于线程句柄没有正确赋值导致崩溃的问题 ====================================================================================== 血与荣誉网络通信引擎2017-3.27.1.1001 Build0827 服务组件 删除了统一的模块拷贝脚本,不在需要 修改流媒体服务器的组件的部署模块方式,增加了模块脚本拷贝文件 修改消息队列服务器的组件的部署模块方式,增加了模块脚本拷贝文件 修改网络授权服务器的组件的部署模块方式,增加了模块脚本拷贝文件 更新服务现在支持新版本只提醒而不下载 更新服务现在支持配置文件读取了 基础组件 基础模块 删除了事件管理器中的句柄生成函数,现在采用句柄管理函数中的创建函数来创建 句柄管理函数生成的句柄扩大了生成数范围 核心组件 核心模块 修正短链接服务创建线程失败导致初始化函数一直返回失败的问题 池管理模块 修正线程池内部线程创建失败导致的问题 删除了连接池优化相关的两个函数,不在支持 优化连接池内部表结构以及代码 现在连接池能够创建多个连接池了 修正连接池使用和返回的句柄状态不正确导致的问题 连接池删除ATM支持,增加了RAW的支持 线程池导出的函数名称现在和LINUX版本同步了 内存池模块 重新启用了内存池,但是需要调用函数开启才会生效并且需要安装VC的运行时库 ====================================================================================== 血与荣誉网络通信引擎2017-3.26.2.1001 Build0816 服务更新 增加了引擎更新服务,这个服务可以检测和更新网络引擎库 更新组件 下载模块 现在下载文件会删除以前的下载了,解决下载失败问题 帮助模块 现在帮助模块构建版本列表操作支持指定本地文件目录位置了 帮助组件 日志模块 现在日志模块可以不换行打印了 WINAPI组件 WINSDK模块 修正枚举文件目录崩溃的问题 ====================================================================================== 血与荣誉网络通信引擎2017-3.26.1.1001 Build0811 核心组件 核心模块 TCP短连接增加了关闭客户端网络资源的函数 TCP短连接发送数据现在可以自定义关闭或者不关闭客户端了 TCP短连接现在客户端主动退出会收到消息通知了,长度为0表示退出 修正TCP短连接销毁函数没有关闭服务端口的问题 优化TCP短连接关闭网络句柄函数,网络资源能够正常释放了 基础组件 基础模块 分割前后两个字符串函数修正后续字符串在特殊字符下面无法正常分割的问题 更新基础时间结构定义的月份,修正拼写错误问题 网络组件 网络帮助模块 HTTP服务删除了APIHelp_SimpleHttp_ParesHdr函数,现在集成到GetClient函数中 HTTP服务扩展了获取客户端消息功能函数,现在可以获取后续包长度和协议头字段信息了 更新HTTP服务锁的方式为读写锁,解决部分性能问题 HTTP服务发送的时候能够正常识别客户端的Connection 字段请求了 现在HTTP服务支持组包了,能够识别大数据消息的传输了 现在HTTP服务支持所有请求类型而不限制与POST和GET了 LinuxApi组件 LinuxSdk模块 优化处理枚举目录的回调函数返回值处理流程 下载组件 下载模块 现在HTTP和FTP下载上传的时候暂停和恢复进度大小不会被设置为0了 ====================================================================================== 血与荣誉网络通信引擎2017-3.25.1.1001 Build0804 例子更新 更新例子 增加了更新的一个运行程序 修改了更新例子代码,匹配到最新版本 更新组件 大幅修改本组件,此次组件近乎重构,详情查看函数列表和注释以及例子 文件解析模块 删除了文件解析模块中的更新文件信息,集成在例子中 更新网络配置读取器读取方式,采用了Get方式获取 更新网络配置配置读取方式,采用了JSON格式,不在使用配置文件方式 读取现在只读取网络配置信息,不在进行版本匹配 现在匹配功能可以导出新版本号和旧版本号了 文件更新模块 优化了下载解析,使用了LIST容器方式 删除了事件功能,现在不在需要这个功能 对队列下载和同时下载进行了优化 现在百分比能够正常显示了 关闭函数能够正常使用了,如果不调用,更新文件将不能正常使用 更新帮助模块 优化使用流程,现在只需要一个函数就可以使用了 重构了代码流程,现在能够正常删除,安装,执行和修改本地列表信息了 增加构建版本列表的函数,现在可以构建更新和本地的文件列表了 WIN组件 WINSDK模块 现在写缓存到文件支持第一个参数为NULL了 网络组件 APIHelp模块 POST和GET函数方法支持获取缓冲区长度了 修正GET方法自定义头不能为NULL的情况 帮助组件 日志模块 调整日志文件缓冲区大小,从2000到8000 下载组件 下载模块 现在HTTP和FTP下载和上传完毕后下载大小和总大小将不会再设置为0 基础组建 基础模块 修正删除子字符串对于特殊字符处理无效的问题 更新格式化日期到SQL增加一个新参数,可以设置是否带上格式符号“-” 修正格式化日期第三个参数为NULL会崩溃的问题 ====================================================================================== 血与荣誉网络通信引擎2017-3.24.1.1001 Build0702 其他更新 发布的头文件加载目录独立出来了,方便使用 删除了发布头文件夹目录的安装程序代码,不在需要 例子更新 增加了ZIP文件解压缩使用例子 清理了RELEASE在SVN库里面的问题,现在发布将最精简发布 增加了清理编译临时文件的脚本文件 帮助组件 二进制打包模块 修正导出错误文件没有过滤重复加载文件的问题 解压缩模块 增加解压缩模块,现在独立成为单独的模块 修正解压文件失败的问题 更新文件解压函数,现在能够正确解压文件了 有两套函数,一套用于文件解压缩,一套用于内存解压缩 WINAPI组件 SDK模块 删除了解压缩处理文件功能集 ====================================================================================== 血与荣誉网络通信引擎2017-3.23.1.1001 Build0625 其他更新 更新说明文档和组件依赖图和组件架构图 例子更新 调整DB例子和XML例子目录,放到单独的帮助组件例子中 增加了BINPack二进制打包模块使用例子 更新基础模块例子,增加分割路径例子 服务更新 后台管理服务 增加配置文件,可以通过配置文件和参数来配置启动选项 修正日志打印大小不正确的问题 修正窗口无法隐藏的问题 帮助组件 二进制打包模块 增加二进制打包模块,支持文件和数据流打包成一个文件 支持解包 支持自定义头写入和获取 日志模块 现在不在需要填充STD名字结构体了 WINAPI组件 WINSDK模块 修正数据压缩函数文件压缩不起效果的问题 基础组件 基础模块 修正路径分割函数绝对路径无效的问题 ====================================================================================== 血与荣誉网络通信引擎2017-3.22.0.1001 Build0621 其他更新 公用头文件增加MAKEVERSION版本号的与定义函数 服务更新 增加了自定义端口和心跳配置的功能 增加了注册验证服务功能 客户端组件 客户端模块 UDP删除不在支持删除所有客户端 核心组件 核心模块 获取网页原始数据判断换行标示修改为更加合理 P2XP组件 P2XP核心模块 修正销毁核心服务部分错误无法返回的问题 修正没有关闭线程句柄的问题 P2XP文件管理模块 修正查询文件夹数据库匹配错误的问题 帮助组件 错误报告模块 移动崩溃报告模块到WINAPI组件目录下 基础组件 基础模块 删除了字符串处理功能集多余的文件 删除了字符串处理类构造多余的代码 网络组件 压力测试模块 删除了ARP攻击测试,与网络引擎无关 解决了模块误报病毒的问题 取消了对Packet.dll库的依赖 ====================================================================================== 血与荣誉网络通信引擎2017RC1-3.21.1.1001 Build0620 其他更新 发布文件夹依赖的开源库现在非多个地方引用的库才集中放到一起 例子更新 P2XP客户端 支持登录协议和获取局域网列表协议例子 支持链接到指定客户端协议的功能 服务更新 P2XP服务 修正P2XP服务器登录的时候加入列表数据无效的问题 P2XP组件 P2XP协议模块 P2XP协议模块增加了对打开网络服务端口的封包函数 增加了获取本地局域网IP地址或者同一公网下IP地址封包的函数 现在请求封包函数支持自定义封包的序列号了 现在响应函数将不会修改封包的序列号了 修改P2XP打开网路服务为连接到网络服务 增加了提交P2XP文件协议查询和删除以及增加操作 协议模块增加服务器响应P2XP文件查询功能函数 P2XP节点模块 增加了获取指定用户标识的对应信息的功能 修正节点模块获取用户信息无效的问题 P2XP客户端模块 P2XP客户端现在支持设置指定用户标识 客户端支持发送心跳或者不发送的选项 客户端链接服务器的回调函数现在增加了P2XP协议头,不需要在移动指针了 修正P2XP客户端模块获取的套接字链接地址和端口不正确的问题 P2XP数据库模块 增加了一组服务器操作的查询,删除和增加操作函数 客户端组件 客户端模块 TCPSELECT扩展函数增加了设置回调函数模式的功能 安全组件 OPENSSL模块 修正计算文件信息摘要打开文件一直失败的问题 ====================================================================================== 血与荣誉网络通信引擎2017BT2-3.20.2.1001 Build0617 例子更新 增加了P2XP客户端例子使用,支持链接到P2XP服务器 服务更新 P2XP服务-新增 增加P2XP服务,支持P2XP协议传输 P2XP服务器支持获取外网IP地址ISP信息 支持配置读取配置文件方式和启动参数设置方式启动服务 P2XP组件 P2XP客户端模块 P2XP客户端不在使用节点模块和获取ISP信息,统一由服务器使用 P2XP客户端现在会立即获得节点类型并且报告给服务器 P2XP客户端现在只会处理协议了,而且会导出完整的协议,也提供处理函数 P2XP节点模块 删除了节点模块中的节点选择器功能函数 删除了节点选择器路由选择器,以后再启用 P2XP文件管理模块-增加 文件管理模块支持数据库管理,采用SQLITE数据库 这个模块管理的模块将作用于P2P服务文件分发传输 管理模块支持文件信息插入,删除,查询操作 支持获取管理文件的总个数和总大小 支持直接插入文件夹来获取这个文件夹所有的文件 支持插入数据库的文件自动管理,删除本地已经被删除的文件 支持插入文件和文件夹并且自动计算所需要的信息 P2XP分发模块 重构了分发模块,现在能够正常使用了 现在创建服务支持创建UDP和TCP服务 现在支持创建多个TCP和UDP客户端 接收数据方式通过回调函数获取 支持对服务器和客户端分别发送数据 增加了文件缓存服务功能集支持接受网络文件并且自动插入数据库 增加了数据缓存服务功能集支持组包网络数据缓冲区和获取 核心组件 安全模块 OPENAPI函数信息摘要算法支持文件方式采集信息了 如果是文件方式信息摘要算法的长度可以为NULL 核心模块 UDPSelect服务器现在句柄采用我们创建和使用,不在由用户管理 UDPSelect服务器更新了句柄类型和使用方式 音视频组件 更新音视频组件文件夹名称,以前的拼写错误了 客户端组件 客户端模块 现在客户端UDP扩展函数不需要用户管理句柄了,我们统一创建 修正UDP客户端的回调函数没有申明调用约定的问题 增加了TCPSelect扩展函数网络句柄转套接字句柄的函数 RFC组件 代理服务模块 更新代理服务模块由于网络客户端句柄类型修改造成的问题 流媒体组件 包管理模块 修正网络客户端回调函数修改造成的问题 帮助组件 包管理模块 文件包管理获取函数增加了获取文件大小的功能 现在lpszClientAddr 参数有值ptszClientAddr可以为NULL ====================================================================================== 血与荣誉网络通信引擎2017BT1-3.20.1.1001 Build0615 例子更新 更新了视频获取例子,修正了获取屏幕的时候崩溃问题 其他更新 增加了CommHdr公用头文件,现在我们的库都需要优先加载这个头文件 更新了所有组件模块加载头文件的方式,现在都会加载公用头文件了 协议头增加了P2XP协议,现在P2XP协议集成在公用协议头里面了 修正还有部分地方调用WSAStartup和WSACleanup函数导致网络无法使用的问题 OPENSSL设计文档更新 音视频组件 视频编码模块 更新视频编码库编码参数,设置编码为媒体编码方式,使用常规编码速度 更新编解码PTS值超过大小的问题 基础组件 基础模块 基础模块现在到处的头文件中不在包含一些句柄定义和到处转换定义 基础模块的字符串处理是否为IPV4函数增加了新的导出参数.可以获取IP分割后的值 P2XP组件 更新了P2XP组件的所有错误码定义,规范了命名规则 P2XP客户端模块 删除了客户端IOPacket功能集,采用HelpPacket模块来管理 删除了帮助功能中的打洞函数 P2XP现在支持发送心跳包了 P2XP服务现在能够正确的处理登录包了 P2XP核心模块 删除了核心模块的流包管理器功能集 核心通信函数功能将不在支持UDP,协议通信只支持TCP 增加了组包功能集,现在所有TCP协议数据都需要经过PACKET模块来组包 发送功能简化了流程,现在不需要获取一次节点在发送了 现在支持关闭指定客户端了 修正关闭服务功能无法关闭网络的问题 现在服务器能正确处理TCP的连接,接受和关闭消息了 现在心跳函数只处理超时值,并且能够正确处理了 现在能够正确处理用户登录协议了 初始化函数现在支持设置启用心跳和关闭心跳功能 现在回调函数不光可以导出正常事件,也会导出异常错误事件了 P2XP协议模块 系统协议增加了分析函数功能,支持解析效验码和TTL和协议本身的正确性 修改了导出函数的函数个数,简化使用方式 删除了构建消息包的函数,不在需要 用户协议修改用户请求打包函数,现在更加简化了 删除了用户协议分析函数 增加了通用协议响应处理函数 增加了支持列表封装的处理函数 P2XP节点模块 P2XP节点管理功能增加了相同局域网IP地址管理 增加了添加局域网IP地址的功能函数 增加了获取相同局域网IP地址列表的功能(支持多网段同一公网IP地址) 获取所有节点将不导出MAP结构而是LPVOID 删除节点支持删除局域网列表的功能了 删除了分割文本的函数 节点选择器修正获取两个节点之间通信方式不正确的问题 核心组件 核心模块 更新获取外网IP地址的方式,现在更加简洁有效了 现在获取内网IP地址不需要在申请空间了,使用;这个符号来分割了 修正获取网页源代码的问题,现在不需要路径也可以获取了 帮助组件 日志模块 修正打印的日志不是本地系统时间的问题 ====================================================================================== 血与荣誉网络通信引擎2017-3.10.2.1001 Build0603 例子更新 AVSend发送例子的发送地址更新和RTMP发送数据长度更新 服务更新 修正后台管理服务地址不正确的问题 网络组件 网络帮助模块 修正POST请求对于chunked回复无法接受数据的问题 流媒体组件 RTMP模块 修正回调函数参数不生效崩溃的问题 调整发布文件夹依赖外部库目录结构 ====================================================================================== 血与荣誉网络通信引擎2017-3.10.1.1001 Build0530 其他更新 SELECT TCP服务器示例代码更新 服务更新 后台管理服务器支持隐藏窗口运行了 后台管理服务器支持自动重新启动和开机启动了 后台管理服务器的解析和解析状态日志完善 RFC组件 邮件模块 修正发送列表内存没有释放的问题 现在关闭邮件客户端不会把句柄管理器模块中的所有句柄清空了 WIAPI组件 WINSDK模块 硬件SDK修改硬盘信息获取API名称,和LINUX版本一起规范 网络组件 后台管理模块 更新同步WINSDK硬盘信息获取API 修正协议TYPE字段判断不生效的问题 网络帮助模块 修正POST提交后获取不到返回内容的问题 网络核心组件 核心模块 修正TCPSelect服务器拷贝字符串的时候崩溃问题 池管理模块 暂时删除了对内存池的支持 ====================================================================================== 血与荣誉网络通信引擎2017-3.10.0.1001 Build0527 其他更新 APP例子增加了插件使用的代码例子 APP的AVSend增加了RTMP实时流推送的示例代码 协议头定义增加了后台服务协议的定义格式和内容 修正发布的文件中X86平台缺少NATPMP库的问题 现在发布的文件对于依赖的开源库进行单独的文件夹放置,方便查找 Build0527 服务更新 服务增加了后台管理服务器,用于后台运行特定操作 支持网络组件的后台管理模块的所有操作 Build0527 插件组件 插件核心 修正搜索目录库后续添加的过滤器无效的问题 修正添加模块导出的句柄无效的问题 修正添加自定义函数的时候次数和时间间隔无法正确执行的问题 修正添加自定义函数无法执行这个函数的问题 添加自定义函数的时候可以不自动执行了 流媒体组件 修改PACKET模块的错误码定义,规范了命名 修改RTSP服务模块的错误码定义,规范了命名 RTMP模块 删除了对LIBRTMP的依赖 删除了SPS解析代码和推流包管理代码 修改RTMP推流方式,采用回调函数写H264数据来推流,具体请查看导出函数 修改RTMP流媒体推送模块的错误码定义,规范了命名 WIAPI组件 WINSDK模块 修正文件查找功能的一些错误,现在能正确返回结果了 现在文件查找功能会正确导出文件目录了并且更新了最后一个参数的解释 修正有子目录的时候查找子目录失败的问题 修正递归文件夹不为真的时候无法正确导出文件夹名称的问题 导出的回调函数增加了是否为文件夹的参数,方便判断 修正获取磁盘个数和名称无效的问题 Build0526 现在系统版本获取支持获取WINDOWS10的系统信息了 Build0527 帮助组件 日志模块 更新在写日志文件超过限定大小后,将会拷贝当前日志作为备份,继续写当前日志文件了 日志文件配置结构体修改字符的数据大小改成宏定义的MAX_PATH大小 修改日志文件超过备份文件个数不会新日志不会被覆盖了 清理了以前的老旧日志代码 消息队列模块 将消息队列模块从帮助组件移动到了网路组件中,规范了模块关系 更新错误码定义,规范为网络组件类型错误 更新消息队列的回调函数的定义,规范为NETHELP组件方式 Build0526 网络组件 APIHelp模块 短连接HTTP服务器修改标准时间格式定义的方式,解决使用崩溃的问题 网络测试模块 修正编译发布的时候发布的头文件位置不正确的问题 修正编译发布的时候DLL名称不正确的问题 后台管理模块:增加 Build0526 支持获取客户端指定文件夹的文件列表 支持删除指定文件和文件夹 支持下载文件和上传指定文件 支持运行指定文件 支持弹出消息 支持HTTP消息请求和TCP标准客户端消息请求 支持对用户机器进行制定操作(关机,重启等) 信息收集支持CPU 内存 硬盘硬件信息的收集了 Build0527 信息收集支持系统的版本号和进程个数和计算机名收集了 Build0527 信息收集现在收集一次不会再次收集了 Build0527 信息收集支持自动提交,也可以手动提交 Build0527 RFC组件 邮件模块 Build0526 修正删除内存的时候崩溃问题 修正SMTP取消设置SSL类型不支持的问题 修正SMTP在部分邮件服务器的时候验证邮件命令被拒绝的问题 Build0527 验证组件 验证服务模块 验证服务模块的电子邮件操作更新适合新版本 核心组件 池管理模块 内存池现在调试模式不在使用高级的内存池API,而采用普通的内存函数了 Build0527 ====================================================================================== 血与荣誉网络通信引擎2017RC5-3.3.0.1001 Build0521 服务更新 增加了RTSP流媒体服务器,可以支持H264直播和点播了 服务安装脚本增加了流媒体64位库文件的安装 其他更新 协议头更新了类型定义的方式和增加了部分定义 APP例子更新增加了推送H264数据到RTSP服务器的代码 APP例子增加了本地验证判断的例子 APP例子增加了推送RTMP的例子代码 流媒体组件 包管理模块: 包管理服务器版本调整了处理方式,服务器不在发送数据,只负责接收H264的数据 服务器版本现在回调函数可以不用设置了 服务器的函数调整初始化不会在加载文件了 包管理客户端版本调整了现在发送需要先发送一个协议头 客户端现在需要发送H264数据给服务器了 完善了导出函数的注释说明 RTSP服务模块: 现在RTSP服务模块采用新的包管理器来处理数据了 扩展了输出缓冲区大小,解决1080P丢帧的问题 RTSP模块现在支持推流个数限制了 完善了导出函数的注释说明 RTMP模块: 增加了H264文件推送到RTMP服务器的功能 编解码组件 帮助模块: 更新了查找编解码器的时候跳过正确的编解码器的问题 帮助组建 日志模块: 修正了日志模块打印类型没有效果的问题 完善打印宏的定义,更加简洁 验证组件 加解密模块: 修正密码为空的时候导致的内存溢出问题 WINAPI组件 WINSDK模块: 修正WINSDK CPU获取序列号缓冲区溢出问题 ====================================================================================== 血与荣誉网络通信引擎2017RC4-3.2.3.1001 Build0513 编解码组件 帮助模块: 帮助模块增加了可以打印输入设备列表的功能 帮助模块的音频初始化增加了输入设备名称的参数 修正音频输入名称设备没有效果的问题 Build0512 音频模块: 增加了解码到PCM数据的功能函数 视频模块: 修正转换YUV没有导出数据的问题 删除了编码的时候没有使用的代码 Build0512 初始化YUV转RGB24修正了过期函数的使用,现在使用了新的函数 Build0512 删除了前面的H264类型定义,现在同一采用枚举型的类型视频格式定义了 Build0513 ====================================================================================== 血与荣誉网络通信引擎2017RC3-3.2.2.1001 Build0510 例子更新 增加了AV音视频编解码录像的例子 更新了WINSDK获取CPU硬盘信息的例子 编解码组件 视频编解码模块: 修正实时流传输的初始化参数错误问题 视频编解码模块现在支持H264实时流解码功能 视频编解码增加解码YUV转RGB24的功能 音频编解码模块: 修改编码的音频格式为MP2,AAC等格式需要更多时间来支持 WINAPI组件 WINSDK模块: 修正64位下CPU序列号获取失败的问题 ====================================================================================== 血与荣誉网络通信引擎2017RC2-3.2.1.1001 Build0507 基础组件 基础模块: 现在编码转换函数能够正常对UTF8和GBK进行互相转换了 帮助组件 日志模块: 更新日志模块,对获取文件大小进行统一 更新日志的导出输出定义,对输出的类型统一 编解码组件 编解码帮助模块:新增加模块 编解码帮助模块现在支持录制屏幕 录制屏幕功能支持调整录制帧率和录制坐标位置大小参数 帮助模块支持摄像头采集录制 帮助模块支持声音采集录制 视频导出的是YUV420P原始数据,音频导出的是PCM原始数据 视频编解码模块: 更新视频编解码模块编码函数,现在编码的原始数据采用YUV三个参数编码了 更新编码模块的函数名称,简化函数定义 修改视频编码的方式,解决编码可能出现的问题 音频编解码模块: 删除了G723f编解码功能函数集 删除了Gsm编解码功能函数集 删除了ILBC编解码功能函数集 删除了PCM编解码功能函数集 删除了VAD和不需要的文件编解码功能函数集 增加了音频流编解码功能,支持AAC编码音频,以后将继续增加音频编码功能 ====================================================================================== 血与荣誉网络通信引擎2017RC1-3.2.0.1001 Build0429 其他更新 架构图片更新 核心组件 核心模块: 清理UDX代码,不在需要 删除了端口复用代码集.不需要的功能 帮助组件 日志模块: 修正日志模块移动文件指针可能导致写日志覆盖的问题 ====================================================================================== 血与荣誉网络通信引擎2017BT2-3.1.2.1001 Build0428 其他更新 对DEBUG模式编译进行了支持,并且更新 对引擎的所有导出函数参数类型进行了更新,现在UNICODE和ANSI有明确的标识 删除了WEB-Net网页验证文件,已经被抛弃的方式 修正不是ANSI编译的项目 对协议头的定义名称修改,规范协议命名 服务更新 验证服务和消息服务现在发布到两个文件夹中,而不是一个文件夹 更新编译选项,现在编译支持拷贝特定DLL到发布目录下 现在支持发布ANSI版本的32和64位版本了 验证服务: 修正依赖头文件路径不正确的问题 现在验证服务不发布到库目录中 现在发布支持ANSI的X64和X86版本了 消息服务: 消息服务现在没注册的版本不能使用UDP并且限制个数为10个消息 Build0428 核心组件 核心模块: 更新套接字管理接口创建支持扩展UDP套接字创建 更新IOCP UDP模型,现在IOCP模型可以使用了 修正IOCP UDP组件接受数据事件投递失败的问题 下载组件 BT下载模块: 移除BT下载项目,以后再加 验证组件 验证服务模块: 修正验证检测服务默认类型检测时间失败导致的问题 WINAPI组件 WINSDK模块: 现在编译不在带上版本信息 64位获取CPU序列号不在返回错误,而是返回NOTSUPPORT字符串,后面再解决 帮助组件 日志模块: 更新了日志依赖库为LOG4CPLUS 增加了自己写的日志库,以后不会在用开源库了 删除了依赖的开源库日志系统,日志系统自己写了 Build0428 日志系统写的时候支持对缓存和非缓存写日志的功能 Build0428 日志系统支持调整打印日志优先级 Build0428 组件模块: 同步组包拆包模块代码为LINUX版本 消息队列模块: 增加设定消息队列当前最大包个数的功能 Build0428 ====================================================================================== 血与荣誉网络通信引擎2017BT1-3.1.1.1001 Build0425 其他更新 创建了新的APP服务文件夹,用于服务器例子编写 增加了消息队列服务,与LINUX代码相同 客户端组件 客户端模块: 更新客户端模块TCP扩展函数Select模型的名称,增加了TCP标识符 修正UDP SELECT发送函数发送多次导致的问题 删除UDP SELECT了不需要的锁函数 修正UDP SELECT的接受函数导出接受数据长度不生效的问题 修正UDP SELECT的接受函数导出数据和客户端地址不正确的问题 帮助组件 XML模块: 修正导出LIB库和依赖的DLL库文件名不一致的问题 CrashRpt模块: 修正导出LIB库和依赖的DLL库文件名不一致的问题 X脚本模块: 修正导出LIB库和依赖的DLL库文件名不一致的问题 组包模块: 现在组包模块投递支持-1长度的离开包的投递了 修正组包模块投递包判断逻辑导致判断不成功的问题 修正组包模块有自定义头的时候取出不正确的问题 更新组包模块获取包函数,增加一个是否释放获取完毕后包内存的参数 组包模块获取包函数现在可以获取协议头了,默认不导出 消息队列模块: 增加消息队列模块 消息队列模块支持多线程绑定CPU 消息队列模块支持TCP和UDP消息 支持保存指定时间 支持消息队列所有用户和指定用户提取 增加了消息队列协议封装函数,支持投递和提取以及返回有数据和无数据协议封装 消息队列模块投递和取出支持指定协议类型:TCP消息和UDP消息或者不关心类型 消息队列支持永久保存一条消息在队列中,但是必须设置KEY值,每个KEY最大65535个消息 消息队列现在支持序列访问方式了,协议头投递和获取序列号填写后即可使用 现在消息队列投递的时候支持回复请求了,可以通过协议头设置获取是否投递成功 修正消息队列中启动UDP线程句柄错误的问题 增加消息队列协议处理离开封包的功能 流媒体组件 流媒体服务模块: 修正流媒体实时流卡死的问题 网络组件 LSP模块: 删除了LSP模块.如果需要以后再加,这几个版本不在加入 UPNP模块: 修正UPNP编译问题 RFC组件 代理模块: 删除了代理服务器的HTTP代理模式,集成在SOCK中 更新代理服务模块调用的核心模块的网络函数为扩展函数 修正检测线程无法销毁的问题 验证组件 验证服务模块: 增加获取验证客户端信息的函数 验证服务: 验证服务器现在不在组件目录,移动到APP服务项目文件中 基础组件 基础模块: 修正局柄管理类有几率引起程序卡死的问题 修正字符串操作分割地址和端口函数失败的问题 P2XP组件 节点模块: 删除节点模块导出函数多余的注释 ====================================================================================== 血与荣誉网络通信引擎2017PT1-3.0.4.1001 Build0404 更新组件 调整更新组件的模块导出函数和规范生成选项 帮助组件 XML模块: 快速查找功能集更新DOC类,修正更新后的编译问题 验证组件 更新调整组件编译选项和导出函数选项 音视频组件 音频模块: 调整了目录位置 删除了不需要的依赖选项 视频模块: 同步了视频编解码模块与LINUX的代码 更新了使用的外部库版本 核心组件 核心服务模块: 增加IOCP TCP 给所有客户端发送数据的函数 P2XP组件 更新组件模块,规范和同步现在的导出函数定义 P2XP协议模块: 修改P2XP协议公用头文件,调整位置,并且发布 修正节点选择器选择节点和停止函数没有生效的问题 P2XP数据分发模块: 增加了导出函数和发布库 修正编译问题 WINAPI组件 WINDEBUG模块: 删除了WINDEBUG检测调试器等调试函数功能,以后都不在启用 插件组件 插件核心模块: 增加了插件核心模块 核心模块现在只支持固定函数 支持搜索插件 支持插件管理系统 增加插件信息获取模块 ===================================================================== 血与荣誉网络通信引擎2017PT1-3.0.3.1001 Build0402 RFC组件 重建了电子邮件模块,规范RFC组件模块的规则 重建了代理服务器模块,规范RFC组件模块的规则 重建了WEBSOCKET模块,规范RFC组件模块的规则 流媒体组件 增加了流媒体传输模块,支持进行RTSP模块数据传输 增加了RTMP流媒体传输模块,可以打包H264流到RTMP服务器上面 更新流媒体服务模块,修正部分问题 删除了流媒体客户端模块(此版本有问题) 存储组件 SWIFT存储模块: 更新存储模块名称,规范模块命名 基础组件 基础模块: 现在基础模块回复了GetEndChar函数 客户端组件 客户端模块: 增加了TCP Select扩展函数 ===================================================================== 血与荣誉网络通信引擎2017PT1-3.0.2.1001 Build0401 WINAPI组件 WINSDK模块: 删除了获取是否在虚拟机中运行的函数 删除了WINIO静态库,不在需要 DEBUG模块: 更新了HOOK内部版本 其他更新 更新了组件模块导出库导出方式 更新了组件模块错误获取方式 网络帮助组件 API帮助模块: 增加了HTTP简单服务器功能 HTTP加单服务功能与LINUX版本一样,具体可以参考LINUX版本更新说明 UPNP模块: 更新了UPNP模块使用的开源库 更新了UPNP代码符合最新版本 压力测试模块: 更新了压力测试模块,删除了没有用到的过防火墙函数 帮助组件 日志模块: 增加日志打印宏,现在可以更加方便打印日志了 修改日志打印大小设置不生效的问题 增加了一个新的打印函数,直接打印 修改日志打印接口支持格式化打印日志 优化日志关闭函数 增加了日志数据结构两个新的成员,现在可以支持多日志打印了 XML模块: 更新XML模块调整项目生成名称 脚本模块: 更新脚本引擎导出函数和更新脚本引擎内部版本 数据库模块: 更新数据库模块外部依赖库为最新版本以及导出函数定义更新 组包管理模块: 重写了影射表里面的内存数据段,解决内部引起的崩溃问题 增加了文件组包函数组,现在可以通过网络组包文件了 增加了扩展组包函数,现在可以创建多个组包函数,只增加了一个新的参数句柄 组包器增加了两个函数,一个随机曲队列中的包和获取剩余包个数 完善组包器事件管理功能 修改拆包器,现在与组包器进行代码合并 修改了组包类中的单独客户端资源锁定方式,合并到一起了。加快锁访问速度 协议头定义增加和修改 修正了组包器在某些情况下丢包的问题 优化组包内存和组包流程 核心组件 核心服务模块: 增加了短连接SELECT TCP服务模型 ===================================================================== 血与荣誉网络通信引擎2017PT1-3.0.1.1001 Build0331 其他更新 基础平台重新配置了x64平台,现在将会一起编译发布 修改项目编译平台配置,增加ANSI和UNICODE发布和DEBUG编译模式 删除了所有导出函数的__declspec(dllexport)和__stdcall 更新所有导出函数获取错误码,现在获取错误码将会永远导出最后一次错误 请注意:WINDOWSXP以及XP以下版本将永远不在提供支持 现在WINDOWS版本不会自己初始化WSStartup函数了,需要用户自己调用 更新部分项目名称,现在规范名称规则 帮助组件 数据库模块: 重新创建了数据库模块,取消了对COM的依赖 基础组件 删除了WINIO模块,不在使用此模块了 基础模块: 增加字符串处理分割路径和文件名的功能 增加字符串处理提取路径和文件名,扩展名以及驱动器盘符的功能 增加字符串处理通过字符串分割字符串的提取前后字符串功能 增加字符串处理通过字符分割提取前后字符串功能 删除了老旧的字符串字符分割函数,使用新的替代 句柄类:优化句柄生成与销毁函数,增加创建句柄新的输入参数 删除了livIconv.lib静态库,不在使用 删除了字符串编码转换定义 核心组件 池管理器模块: 更新了使用的开源库,使用最新版本 核心模块: 重构了核心管理模块项目,取消了COM注册,采用标准WIN DLL模块创建 重写了IOCP TCP核心模块,消除了对其他库的依赖,不在需要配合客户端使用 增加了UDPSELECT模型服务 删除了UDPEPOLL模型服务,以后增加,这个有问题 增加了SOCKET工具函数,用于创建发送删除设置套接字属性等 删除了UDX功能集,不在使用,请使用UDT相关函数 现在网络发送和接受都导出输入const char *了,不在使用unicode版本 同步SELECT TCP服务器代码,现在与LINUX版本一样了 分离了TCPSELECT EX代码,单独出来文件管理 NETXAPI模块: 更新错误码导出一直获取错误,更新PCAP库为最新版本 协议模块: 重构项目类型为WIN32项目,删除了不需要的工具类库 OPENSSL模块: 重构了OPENSSL模块为WIN32项目,取消了对AFX的依赖 删除了加解密功能集中的BASE64算法 删除了加解密功能集中的AES算法 删除了WINSERVICE加解密网络通信服务函数 视频编解码组件 删除了XSHOW模块 客户端组件 客户端模块: 删除了IOCPTCP客户端函数,不需要 ===================================================================== 血与荣誉网络通信引擎2016BT2-2.6.1.1001 Build0511 安装程序: 更新到支持BETA1版本功能 修正安装判断与路径错误问题 RFC组件: 增加了RFC WEBSOCKET协议支持,支持客户端和服务器编程 增加存储组件 增加了存储服务客户端SWIFT协议的支持 其他更新: 更细了项目管理工具到VS2015 ===================================================================== 血与荣誉网络通信引擎2015BT1-2.6.0.1001 Build0226 WINAPI组件:WINSDK模块 修正文件夹是否存在的BUG。无法正确判断 修正文件管理器模块,保存内存文件的时候保存UNICODE乱码的问题 修正硬件模块内存占用和硬盘占用返回值不正确的问题 硬件功能类增加内存使用率的数据结构成员 系统功能类CPU占用率增加一个新参数,暂停时间 删除了获取CPU信息会打印调试内容的问题 :WINDEBUG模块 修正内存泄露检查不生效问题 现在内存泄露检查三方库使用DLL,不再静态链接 基础组件:基础库模块 时间功能类格式化数据库时间,增加一个参数返回小时分钟秒 优化事件管理器,修正在极端情况下造成死锁的问题 客户端组件:客户端模块 增加了对客户端发送数据错误,长度不正确的错误码 核心组件:核心模块 管道通信类读取CMD返回内容增加了新参数并且修正了非UNICODE返回乱码的问题 帮助组件:异常报告模块 修正初始化函数崩溃问题 修正报告模块不生效问题,异常报告模块中的文件必须保持相同目录下 更新到处数据结构,简化成员类型使用 网络组件:压力测试模块 更新导出函数,增加回调函数无类型参数,方便使用 验证组件:验证客户端模块 增加本地验证函数回调超时功能 :加解密模块 增加对注册管理器自定义数据的参数使用,方便那些有次数需求的用户 ===================================================================== 血与荣誉网络通信引擎2014PT5-2.5.3.1001 Build1030 WINAPI组件:WINSDK模块 进程管理模块中增加了添加应用程序开机启动和取消开机启动的功能 ----------------------------------------------------------------- 更新进程模块中一个函数命名为系统SDK函数的问题 ----------------------------------------------------------------- 修正窗口托盘图标程序无法正常创建而且崩溃的问题 :WINDebug模块 增加了内存泄露检测功能 网络验证组件:验证服务程序 增加了托盘功能:显示,隐藏,退出 增加了开机自动启动功能 ----------------------------------------------------------------- 修正了配置窗口的密钥按钮生成不正确的问题 修正了密钥保存按钮点击是打开而不是保存的问题 ----------------------------------------------------------------- 更新了秘钥按钮,现在默认禁用,只有注册才可以生成 更新了验证工具配置项目和增加了一个密钥KEY文件目录 音视频编解码组件:第三方库模块 更新到了库文件为20141028的版本 ===================================================================== 血与荣誉网络通信引擎2014PT5-2.5.2.1001 Build1022 核心组件:核心服务模块 增加文件高速缓存功能 帮助组件:异常报告模块 增加获取注册表信息功能 修正缺少文件导致报告无法发送的问题 删除了错误导出中不需要的信息以及优化错误导出信息定义 基础组件:基础库模块 增加gettimeofdayWINDOWS版本函数。 授权验证组件:应用服务器 修正到期后还可以使用的问题 ===================================================================== 血与荣誉网络通信引擎2014PT5-2.5.1.1001 Build0921 添加WINIO驱动模块,以前忘记添加了。 修正NetEngine_Help_XLanguage缺少模块导致X脚本解析器无法运行的问题 ------------------------------------------------------------------- 更新WINDEBUG模块导出函数没有模块定义导致其他语言无法调用的问题 更新压力测试模块,现在不需要依赖第三方库dll文件了 ===================================================================== 血与荣誉网络通信引擎2014PT5-2.5.0.1001 Build0907 更新P2XP组件:节点管理模块 增加模块服务导出参数 增加了获取相对传输类型的函数 增加了获取机器节点类型的函数(机器节点类型会动态改变) 删除了一个API函数,初始化客户端信息的函数,现在由客户端模块本身集成 删除了以前的协议代码,现在以单独协议模块处理 WINAPI组件:WINSDK模块 删除了不需要的DLL模块,删除了不需要的lib库加载 更新硬件系统导出函数,增加获取内存相关信息的导出 增加了判断目录是否存在的API 更新创建目录没有判断目录是否存在的问题 修正保存缓冲区为文件无法成功的BUG 网络基础组件 删除了老的基础模块 增加新的基础模块,重写后的基础模块将与LINUX版本相同 更新STRING类,增加了两个对字符串提权和解析操作的API 算法库模块: 增加了字符串算法类导出函数,增加二分和快排算法 网络通信引擎:网络NetXAPI模块 修正了QQWAY无法获取IP对应地址的问题 更新了网页源码获取功能,现在第二个参数可以为空 更改QQWAY导出的内容为地址加运营商 :池管理器组件 增加了扩展线程池代码 :核心组件 UDT头文件不在项目文件夹下面。 修正获取网页源码无效的问题 重构了IOCP TCP服务与客户代码 网络帮助组件:XML解析模块 增加一个快速查找XML解析器。只查找速度比以前那个快4-5倍 增加获取操作XML的内存当前内容的功能 增加XML支持内存数据XML加载 :数据库模块 增加MSSQL数据库支持 音视频编解码组件:视频编码模块 修正一处编译错误 :展示模块 更新一部分代码,逐渐完善中 网络更新组件:增加了更新下载器模块 增加了文件更新列表分析器模块 增加了下载帮助模块 现在可以通过我们的API来更新你的软件了,基础本核心引擎实现 网络验证组件:增加本地验证功能支持,不需要连联网 完善了网络验证功能模块 现在可以通过我们的API来更新你的软件了,基础本核心引擎实现 ------------------------------------------------------------------ 全面更新:更新项目文件到VS2013版本,不在支持XP SP3 取消了STL MAP,全面换成unordmap 无序表,提升性能 更新了MANAGEPOOL:线程池和内存池,与LINUX同步 取消了NETXAPI 模块,取消了额外的动态链接库,采用静态链接 ------------------------------------------------------------ 全面更新:所使用到的开源库全部更新到最新稳定版本 ===================================================================== 血与荣誉网络通信引擎2013PT4-2.4.1.1001 Build0228 增加注册管理组件,网络与本地验证双支持 增加IO层网络与数据库通信模块 增加序列号生成器模块-支持天数和分钟验证和生成卡 增加客户端模块,以后都通过他来使用 增加加解密组件,客户端和服务器都会用到,可以自己开发一套 增加应用程序,服务提供者,界面提供者! 对帮助组件更新,增加了XML模块,支持文档创建和读写 增加下载组件,现在支持HTTP和FTP下载上传和续传等功能,支持SSL 更新RFC组件,增加电子邮件的支持 ------------------------------------------------------------------------------ 升级网络内核组件的NETSOCKET HELP模块,现在获取的内容更加丰富 升级网络内核组件的重叠IO服务,现在重叠IO服务基于三层线程结构,处理数据将更加快速 主线程,监听线程 任务处理线程(自动选择器-组合算法) 短线程(接受处理器) 升级事件选择异步模型,现在可以发送数据了 升级内核加解密组件模块,现在代码更加完善,运行也更加稳定,接口改善 升级帮助组件的数据库模块SQLITE数据库,不在需要MYSQL.dll,修正内存泄露错误,增加接口 ------------------------------------------------------------------------ 更新字符串操作模块文件,支持LINUX到WINDOWS字符串转换,遇到乱码的可以使用此函数 更新字符串操作模块,现在是线程安全 更新核心组件网络服务模块,增加支持UDT功能,客户端同样也更新支持 更新WINDOWSAPI模块,删除了注册管理器,不在支持 更新WINSDK模块,增加多磁盘的信息获取,删除了局域网计算机获取功能,转移到NETXAPI模块 更新邮件客户端,现在邮件客户端集成到RFC组件中,支持SMTP和POP3协议,支持SSL 更新操作静态公有库。现在时间跨度计算 ---------------------------------------------------------------------- 同步LINUX代码,跨平台的相同功能现在尽量做到相同接口,相同参数,相同定义,相同数据结构,相同错误码 有小部分相同功能的接口在接口默认加了默认参数,可以不用改变接口的情况下跨平台 部分错误码可能有增加否则减少,但是一样的错误错误码也一样 ------------------------------------------------------------------------ 重构P2P组件,现在P2P改为P2XP协议,完全基于自创的TCP/IP模型上的小世界网络 从NETCORE组件中分离P2XP,从客户端组件中分离P2P。现在单独集成 P2XP包含以下组件,P2XP客户端组件 P2XP核心组件 P2XP数据分发组件 P2XP节点组件 P2XP协议组件 ------------------------------------------------------------------------ 修复核心组件IOCPTCP服务多个BUG ===================================================================== 血与荣誉网络通信引擎2012PT3-2.3.1.1001 Build1129 增加流媒体组件,流媒体组件目前拥有客户端和服务器模块 服务器支持传输多种视频格式,包括H264,MPEG4,TS等,支持文件和实时流 流媒体组件支持用户验证 流媒体组件支持多播和多流媒体服务控制 增加音频编码器模块,现在你们可以单独使用这个模块来进行音频编码传输 支持的音频编码格式如下:G711A G711U G723f G729CP PCM GSM 增加视频编解码模块,目前只支持H264文件 增加算法基础模块库,使用静态库提供,方便以后操作各种业务算法 增加公有操作库,支持字符串ANSI和UNICODE转换和句柄自定义操作 增加日志模块,可以为你的应用程序增加高级日志 增加代理服务器模块,支持用户验证,支持SOCKS4-5 HTTP自适应协议 ------------------------------------------------------------------ 更新核心服务组件中端口占用支持UDP端口 更新核心服务组件选择模型TCP,现在支持启动多个选择模型TCP服务器 支持移除一个指定的客户端 更新安装程序,新增加一个安装选项,推荐使用此(添加引擎目录到系统环境变量) 更新核心服务器的选择模型,增加一个把IP地址转换为网络地址的函数 更新网络客户端UDP选择模型,增加一个新接口获取当前操作套接字的网络地址 更新WINSDK模块,增加枚举指定目录下所有文件和文件夹的函数 ------------------------------------------------------------------ 修正核心服务组件中端口占用判断内存没有释放的问题 修正SELECT服务器发送数据的时候设置NAGER没有效果的问题 修正核心库SELECT扩展服务器函数就算执行成功也会返回错误码的问题 修正客户端UDP发送大数据包发送不完整的情况 修正加载了WINSDK退出程序的时候程序驻留的问题 修正了加载WINSDK,WINSDK模块无法在低于VISTA系统上使用的问题 --------------------------------------------------------------------- 更新安装程序。现在安装程序更加简单易懂,架构更合理,开源的,你可以自己改造 现在安装程序支持卸载功能 安装和卸载核心功能被集中到DLL模块中 安装和卸载功能更加完善 ===================================================================== 血与荣誉网络通信引擎2012PT2-2.2.1.1001 Build0523 增加一个新的组件,扩展开发组件,具体脚本语言开发,二次开发可以参考文档 对XScript(X脚本语言)的运行库第二次开发的支持 封装了LUA脚本语言,让用户可以对LUA脚本进行开发支持 ------------------------------------------------------------------ 更新数据库组件,封装了几个数据库操作,增加了部分功能 增加了数据库句柄统一管理类 增加了SQLITE数据库的支持 更新了核心引擎,对网络帮助API的支持提供了两个新的API 更新P2P组件,增加一个新的模块,P2P节点管理器,支持节点管理和节点类型选择 更新P2P组件客户端模块,支持网络流序列,分拆协议和数据包处理方法 ---------------------------------------------------------------- 移除了WEBContral组件,不在支持 ==================================================================== 血与荣誉网络通信引擎2012PT1-2.1.1.1001 Build0509 重构网络引擎架构,新的网络引擎架构将更加成熟和强大,部分功能模块下次发布 ------------------------------------------------------------------ 客户端组件NETBIOS客户端重新优化,重用了NETBIOS服务器的代码,减少大小 增加IOCP UDP版本,现在UDP服务器将可以使用IOCP模型 增加取消指定进程网络连接功能 增加一个新组件,池管理器,支持内存池,线程池和连接池开发 ------------------------------------------------------------------ 更新XUDT模块,现在UDP可靠传输协议算法更加稳定,但是需要上层UDP支持 更新网络核心库,支持TCP UDP 进程列表获取 ------------------------------------------------------------------ 帮助API也不在集成在核心引擎中,由SDK集成 核心引擎不在集成FTP客户端,由客户端组件集成 核心引擎下的协议模块PING ICMP DNS UDP欺骗传输 集成在新的协议模块中 多媒体模块不在自己独立成为组件,成为流媒体模块组件其下的模块 ------------------------------------------------------------------ 重写端口复用类,集成在套接字操作组件中心中 重写消息选择模型,对内存管理,网络管理,服务器逻辑分开编写 优化了事件选择模型代码,事件选择模型目前只做消息转发 ------------------------------------------------------------------ 移除WebSpider 网络蜘蛛支持库 删除了重复的PING协议实现程序 移除网路词典库例程,以后有机会发布 ----------------------------------------------------------------------- 修正错误提交模块的BUG和无法找到的定义 ==================================================================== 血与荣誉网络通信引擎2011PT-1.0.29.1001 Build0824 更新加解密支持组件,增加了对SSL安全传输功能的支持,必须配合客户端使用 更新客户端引擎,增加多SSL安全传输功能支持,必须配合加解密支持组建使用 更新加解密支持组建,增加对WINAPI CSP的支持 支持枚举CSP 支持创建密钥算法 支持数据摘要签名认证的功能支持 增加了对WINAPI CSP加解密传输验证的支持 更新了WINSDK界面开发库,增加了VISTA以上界面玻璃效果的支持 更新了错误处理开发包,现在不在需要运行时库了 更新错误处理开发包,不在需要额外的模块 更新服务器压力测试开发包,增加了ARP攻击指定地址的功能 ------------------------------------------------------------------- 修正加解密支持组建中错误的引用函数 修正UPNP组件无法获取路由器流量信息的问题 ----------------------------------------------------------------- 从项目中删除了一个加密库,不在使用 ======================================================================= 血与荣誉网络通信引擎2011PT-1.0.28.1001 Build0721 增加加解密支持库组件中对OpenSSL的支持,目前支持以下功能 3DES算法支持 摘要数据算法支持(包括MD2,4,5,SHA,SHA1等) 增加数据签名和认证功能,看清楚,是数据的签名和认证 增加证书操作。获取证书信息,验证证书 ------------------------------------------------------------------------ 更新压力测试工具,增加协议攻击支持。具体支持如下 TCP变种数据攻击模式 UDP协议攻击模式 SYN协议攻击模式 ICMP协议攻击模式 =========================================================================== 血与荣誉网络通信引擎2011PT-1.0.27.1001 Build0715 增加压力测试开发包,目前只支持数据压力测试。 大客户量连接测试 大数据包并发测试 长连接和短连接测试 增加UPNP简单处理功能模块,以后主要负责更新这个UPNP模块 UPnP跨平台模块支持的功能点有如下: 可以获取路由器(网络层)中的上传下载字节流量和包 可以打印路由器信息 可以查找UPNP设备 支持IPV4和IPV6版本,IPV6暂时不公开,有需要的请单独给我说,不会收费的 支持路由器UPNP映射表的添加和删除以及列举,大多数都支持,但是企业级等 特殊路由器不支持。 ------------------------------------------------------------------ 继续完善客户端引擎中,客户端引擎已经被分离出来了,成为单独的引擎 更新核心网络引擎中的WINUPNP,现在与UPNP模块集成。 ==================================================================== 血与荣誉网络通信引擎2011PT-1.0.26.1001 Build0622 增加了客户端网络模块中的客户模型支持,采用select实现UDP协议 增加随机存取优先队列算法模块,方便用户对网络操作中的排序功能实现 ------------------------------------------------------------------- 更新音频编解码g729a到g729AI.1,让编解码效果更好 更新代理服务器模块,增加端口转发功能。 更新了调试支持库模块,增加了HOOK模板功能的支撑,现在HOOK更加方便 ===================================================================== 血与荣誉网络通信引擎2011PT-1.0.25.1001 Build0604 流媒体模块增加了声音录入和播放类功能支持 添加了音频视频处理模块。增加AVI和WMA视频编码格式创建功能支持 核心网络引擎增加了蓝牙通信设备的支持,支持枚举,连接发送和接受 -------------------------------------------------------------------- 继续更新选择模型,优化代码可读性。支持UNICODE方式传输,发送方式完善 更新选择模型,支持心跳包检测 更新WinSdk模块的系统SDK,支持获取系统空闲时间 ===================================================================== 血与荣誉网络通信引擎2011PT-1.0.24.1001 Build0405 增加了一个数据库操作控件,ATL写的。目前集成了ACCESS和MYSQL操作 -------------------------------------------------------------- 更新WINSDK窗口类,增加外部窗口嵌入指定窗口的功能,可以还原 更新加解密容器,增加Tea 算法功能支持 更新WSAEventSelect服务器模型,修正部分错误,增加内存池工作 更新重叠IO服务器的接受连接请求和接受数据请求不完善的地方 更新选择,IOCP,重叠IO代码,支持解决沾包 修正了选择模型客户退出后资源不清理的问题 更新了异常处理报告模块 优化IOCP服务器类线程资源保护效率 更新核心引擎部分,增加HTTP协议文件上传下载功能支持 ------------------------------------------------------------ 删除WINSDK获取硬件信息功能支持,请使用注册管理API来获取 ================================================================ 血与荣誉网络通信引擎2011PT-1.0.23.1001 Build0320 更新WINSDK的网络验证功能,完善和增加了ASP部分功能 网页文件更新,现在功能更加强大 支持序列号生成和管理,双重验证 支持用户端直接注册,更加方便 更新WINSDK的注册管理功能,增加了密码保护卡的支持 更新WINSDK,完善了对ZIP多文件夹解压缩的支持 更新WSAEventSelect内核模块,完善了一部分细节,支持1000以内的客户 更新选择模型内核,现在支持500客户连接 更新IOCP网络服务模型,禁止了端口复用功能 优化了SOCKET的选项包括:禁止WAIT_TIME,和优化发送以及接受性能 更新核心处理引擎,增加了端口复用SOCKET处理功能 更新代理服务器模块,完善了SOCK5代理功能。目前SOCKS5支持以下功能 SOCKS-V4 SOCKS-V5 HTTP 代理自动转换 支持用户名验证和无用户名匿名连接传输 支持TCP UDP自动转换 传输线程完善,SOCKET异步IO模型完善 ---------------------------------------------------------- 移除了ZIPCOMPRESS模块 ============================================================= 血与荣誉网络通信引擎2011PT-1.0.22.1001 Build0311 增加了原始数据驱动接口包,开始对网络底层进行开发 ----------------------------------------------------------- 更新了核心引擎与WINSDK的架构,从核心引擎到WINSDK的类目录如下 ProcessThread进程线程管理类 移除了核心引擎的系统信息管理类,结合到winsdk中 更新网络核心引擎SOCKET消息选择模型。支持最大并发200个客户 Packet大数据组包发送和性能好 优化消息选择模型的代码与架构 增加对内存池的支持。比较简单的内存池 更新WINSDK增加了获取窗口是否被遮罩的功能 ------------------------------------------------------------- 完善了进程线程SDK类部分细节和错误 完善SELECT多线程模式,优化连接管理通过VECTOR来管理 ================================================================= 血与荣誉网络通信引擎2011PT-1.0.21.1001 Build0306 增加一个注册验证的模块,使用WINSDK模块调用,支持以下功能 获取运行时间和运行次数 CDKEY生成与验证,可以生成一个KEY文件并且验证KEY我呢见 网络用户验证。提供源码ASP文件,实现网络验证 获取用户所有的安装软件信息与运行软件信息,操作系统信息和硬件信息 -------------------------------------------------------------------- 更新异常处理模块到最新版本,并且封装好API,你们可以调用我们提供 的API进行各种程序的异常错误处理 -------------------------------------------------------------------- 重新设计了异常处理模块,现在老旧的版本不在支持,请使用新版本函数 ================================================================ 血与荣誉网络通信引擎2011PT-1.0.20.1001 Build0304 更新IOCP服务类,请看以下更新,花了点时间,查了很多资料 增加QOS的支持。目前并不完善,现在IOCP只支持VISTA以上操作系统 操作系统,非VISTA以上请使用重叠IO来提升服务器质量 增加ZIP数据压缩解压支持。 优化了下线程调度 增加了IOCP服务管理,此功能支持WIN32服务,只支持IOCP 增加PACKET功能支持,对IOCP大数据报传输优化支持 更新获取进程CPU占用率方法,修正多核心下不准确的问题 支持进程ID获取方式 更新VPN客户端类,现在线程必须你自己管理,索引必须自己管理 更新WINSDK增加了托盘图标处理功能,支持增加删除和消息处理 更想WINSDK,增加了获取主流BIOS信息的功能 更新WINSDK,增加系统关机功能,支持本地和远程,本地还支持以下操作 关闭计算机 关闭屏幕 重新启动计算机 注销 锁定计算机 休眠 挂起 更新核心服务引擎中的串口异步函数,更加完善细节 =============================================================== 血与荣誉网络通信引擎2011PT-1.0.19.1001 Build0211 增加独立的ZIP文件处理DLL,压缩和解压缩分开 增加DNS核心引擎协议查询支持功能 增加内环过防火墙和隐藏IP流量功能。说明如下: 这个功能你需要使用安全引擎开发包才能使用 增加了IIS插件模块,支持IIS过滤器 增加UDT可靠协议传输功能,支持大文件快速传输 添加了核心引擎中P2P-TCP的支持,目前还不是很强大 ------------------------------------------------------------- 更新了音视频流处理模块,增加声音高级处理类 更新音视频流模块,增加判断是否当前机器上有摄像头的功能 更新客户端引擎,增加P2P-TCP客户端支持 更新WinSdk模块,增加仿造QQ抖动功能,并且可以播放声音 更新WINSDK模块,增加一个其他网络处理类,可以获取LAN中计算机信息 更新WinSdk模块,增加取指定进程占用率功能 更新WinSdk的ZIP压缩支持,方便使用 更新客户端引擎的网络词典服务,优化了部分代码和公开方式 更新WinSdk模块,增加音频处理SDK(这是WIN32API下的) 更新WinSdk模块,增加注册崩溃自动启动函数 更新Winsdk模块,增加判断是否有全屏运行的程序 更新WinSdk模块,增加下载地址转换功能,具体支持请看帮助 更新Winsdk模块,增加为控件添加提示文本的功能 ---------------------------------------------------------- 更改引擎内部P2P架构,采用更加标准化和人性化的文件架构 更新EMAIL类模块,增加支持SSL安全连接的功能 =============================================================== 血与荣誉网络通信引擎2011PT-1.0.18.1001 Build0129 增加网络扩展辅助模块,目前增加远程字典服务功能 增加了ZIP多文件解压缩的支持,但是还不支持多级目录 增加用户信息管理模块,很强大,注册管理和使用管理等等 增加数据解压缩模块,方便网络传输 增加一个网络蜘蛛库,你们可以直接调用或者使用我们提供的SDK ----------------------------------------------------------- 更新网络扩展辅助模块,增加网页蜘蛛LIB功能SDK调用代码 更新WINSDK模块,增加窗口弹出吸附功能 更新加解密类模块,增加了SHA1算法支持 更新WINSDK模块,增加WIN7下提升进程权限的功能 更新WINSDK模块,增加获取CPU实时速度的功能 更新客户端模块,增加网络查词客户端,配合服务端模块方便使用 更新核心引擎,增加一个NetBios异步处理多线程类服务封装 Build0125 更新核心引擎,增加一个数据报异步NETBIOS封装功能 Build0126 更新加解密模块,增加支持MARS加解密功能 更新客户端模块,增加对NETBIOS的支持 更新网络引擎的进程通信的命名管道功能,现在支持多用户 ----------------------------------------------------------- 重新设计WinIO驱动IO通信模块。采用静态方式编译在通过上层DLL封装 重新设计SCM 驱动加载卸载管理类,封装性更好现在 ========================================================== 血与荣誉网络通信引擎2011PT-1.0.17.1001 Build0105 更新WINSDK模块,增加FILESDK类 增加删除非空目录 增加创建多级目录 增加把缓存数据写入到文件的功能 增加文件加载到内存运行的功能 更新代理模块,增加SOCK5代理功能支持 更新WinSDK模块的系统类,增加屏幕截取功能 支持鼠标所在窗口图片截取 支持全屏截取图片 支持自定义位置截图 更新网络通信引擎核心IOCP类,增加派生支持类和DEMO 更新通信类,增加一个新的公开通信类,增加RS485云台操作异步控制 ----------------------------------------------- 删除了多级代理服务支持功能,以后重新设计 ================================================== 血与荣誉网络通信引擎2010PT-1.0.16.1001 Build1226 增加加解密支持库DLL,用于文件或者数据的加密解密 ------------------------------------------------------------ 更新代理模块,增加简单HTTP代理功能 更新CryptOpenSSL,增加对BASE64算法的支持 更新CryptOpenSSL,增加对AES加解密算法的支持 更新CryptOpenSSL,增加对MD5算法的支持 更新代理服务端模块,增加一个简单的HTTP代理类,方便使用 更新WebBrowser模块,增加了取WEB源码的功能 ========================================================== 血与荣誉网络通信引擎2010PT-1.0.15.1001 Build1219 增加音频编码库,方便传输。增加了G729a编码支持 增加CryptOpenSSL COM模块,用于对数据证书服务的支持 增加公钥私钥模块加密解密文件。用于数据保护的模块文件 ------------------------------------------------------------ 更新EMAIL类,完全重写。支持OPENSSL安全连接 更新GSM模块,封装了短消息模块派生于AT类,方便操作 更新HELPAPI类的暂停恢复进程,增加了新的功能,并且提供返回值详情 更新CryptOpenSSL,增加OpenSSL1.0.0c的支持--2010.12.18 更新CryptOpenSSL,增加对CRC32算法的支持--2010.12.18 更新短信猫模块,增加公有类,增加各地区短信服务号码--2010.12.19 更新短信猫模块,增加几个字符串算法,自己写的好处理--2010.12.19 更新短信猫模块,其内部基于多线程,用户完全不用启动线程--2010.12.19 更新WinSdk,WebSdk类,增加QQ快速聊天功能--2010.12.19 ============================================================== 血与荣誉网络通信引擎2010PT-1.0.14.1001 Build1212 增加WINDOWS IO控制驱动,可以对系统底层IO以及串口等驱动通信 增加短信猫管理模块,封装了AT等指令功能方便用户操作调试解调器 -------------------------------------------------------------------- 更新CRASHRPT模块,现在可以获取所有进程以及相关模块的信息 更新CRASHRPT模块内部统一UNICODE封装 更新CRASHRPT模块,对错误的获取处理直接通过结构体参数处理 更新EMAIL基类,增加了直接调用系统邮件发送的功能 更新SCM模块,更新增加WINIO驱动通信操作导出函数 更新GSM_Modem模块,封装了串口操作类,采用AT指令封装 更新GSM_Modem模块,完善错误处理功能,完善串口类和日志封装 更新WinSdk模块,增加一个WEBSDK类,增加了打开浏览器功能 更新WinSdk的系统类,增加了一个判断OCX是否注册的功能 ============================================================= 血与荣誉网络通信引擎2010PT-1.0.13.1001 Build1205 增加ATL浏览器组件DLL,主要处理浏览器一些功能,增加了浏览器协议注册和删除功能 增加EMAIL邮件基类,分别派生支持SMTP和POP3邮件操作 ---------------------------------------------------------------------------- 更新ATL浏览器组件DLL,增加一个注册表操作类--2010.12.03 更新客户端模块,增加重叠IO三线程TCP模型。方便大家使用 当然,你也可以不用这个。引擎是支持所有标准SOCKET方式连接使用的 ================================================== 血与荣誉网络通信引擎2010PT-1.0.12.1001 Build1128 增加IP帮助功能类,可以操作更多网络方面的功能 增加一个新模块,音视频处理模块,目前只支持音频流处理 增加HELPAPI类,增加获取内存信息的功能,可以返回三种单位 增加路由器控制类,增加获取路由器信息,修改和删除以及设置路由器 增加系统信息类,增加获取系统是否被远程控制和获取是否正常启动 增加ARP管理类,增加获取ARP信息的功能 增加UPNP模块类引擎,目前正在封装中,难度有点大 ----------------------------------------------------------- 更新网络帮助功能类,增加获取网络信息,包括网卡信息--2010.11.15 增加获取和设置网络高级信息的功能--2010.11.16 增加获取,添加和删除对指定适配器IP地址的操作--2010.11.20 增加获取TCP和UDP链接状态函数,适合所有系统版本--2010.11.21 更新协议类,增加获取TCP,UDP,IP,ICMP协议的统计数据--2010.11.21 更新HELPAPI类,增加获取CPU使用率的功能,返回百分比--2010.11.23 更新HELPAPI类,增加暂停和返回线程进程的功能--2010.11.25 --------------------------------------------------------------- 扩展协议类获取协议统计数据的功能,支持IPV4和IPV6--2010.11.22 ------------------------------------------------------------ 删除网络协议类中获取链接状态的函数,移除重写 ================================================================== 血与荣誉网络通信引擎2010PT-1.0.11.1001 Build1114 增加互斥体功能,控件只能支持一次加载,不能多次被使用 增加串口通信功能类,支持串口通信同步和异步操作 增加客户端控件DEBUG模式写入运行日志的功能,方便以后排错 增加反破解技术模块,支持多种方式防止破解,对结构体传入传出 增加进程线程操作类,方便大家获取一些特定和设置特定信息 增加系统SDK模块,提供一些方便大家操作的函数,支持获取系统的版本 增加获取网络引擎崩溃信息的模块,可以取程序异常信息和DUMP文件 增加WINSDK模块,提供一些必要的操作信息获取 增加P2P_UDP功能类,支持信息传输和心跳包响应功能,基于OVERLAPPED ----------------------------------------------------------- 更新进程线程操作类,支持取出指定进程ID的线程数量 更新系统SDK模块,支持获取是否在虚拟机中运行(VMWARE和VPC)--2010.11.13 更新串口通信功能类,现在支持超时时间的设定--2010.11.10 更新驱动模块,增加原始UDP驱动包发送接收功能 更新CRASH模块,支持获取当前程序加载的DLL模块信息--2010.11.10 更新CRASH模块,完善一些细节内容的提供--2010.11.10 更新文件操作项目,增加一个文件操作OTHER类,支持文本操作--2010.11.14 更新客户端模块,增加UNICODE和ANSI互转的功能--2010.11.14 ===================================================================== 血与荣誉网络通信引擎2010PT-1.0.10.1001 Build1031 增加FTP客户端类,目前支持登录和登出以及上传下载文件等功能 增加进程通信类,增加了管道通信功能,支持匿名管道和命名管道 增加驱动级进程监控创建以及销毁事件 增加稀疏文件操作类,对于大型文件和要求较高的文件处理支持。采用内联函数 增加SCM管理DLL,支持驱动,服务的通信和管理等功能 ------------------------------------------------------------- 更新管道通信类,支持CMD命令直接发送返回,与之通信 更新稀疏文件类,派生出一个新类,更加方便操作 更新管道通信类,增加邮槽通信,支持一对多的发送 更新管道通信类,增加了内存共享方式写入读取进程共享信息的功能 ============================================================================ 血与荣誉网络通信引擎2010PT-1.0.9.1001 Build1022 开始编写驱动模块,增加了NDIS驱动模板,以后方便扩展。 增加一个新的导出文件DEFINE 定义文件。预计还会增加一个结构体的导出文件 客户端模块更新:增加VPN客户端连接功能,支持连接多个VPN服务器,每个线程管理一个VPN服务器 增加一个完成的SNIFFER类。支持获取TCP ICMP UDP协议以及端口过滤等功能 =========================================================== 血与荣誉网络通信引擎2010PT-1.0.8.1001 Build1010 增加代理服务器模块,独立DLL,添加支持HTTP服务器代理支持,采用多线程 更新支持代理人数访问控制 更新支持LOG日志管理功能。回调函数获取信息 支持二级代理功能。 ----------------------------------------------------------------- 更新SPI安装模块类函数,增加一个新函数支持安装TCP UDP的LSP模块功能 更新LSP模块,支持拒绝指定端口封包过滤的功能.(会慢慢更新和强大LSP模块功能) ====================================================================== 血与荣誉网络通信引擎2010PT-1.0.7.1001 Build1007 增加LSP DLL模块。用于SPI层的高级功能封装和注入。目前支持SendTo 函数HOOK 增加客户端DLL模块,如果要使用更加强大底层的网络功能,客户端必须配合此模块 增加WSC枚举协议函数,能够支持 基础协议 分层协议和协议链的枚举 增加WSA枚举基础协议和协议链的功能函数 ----------------------------------------------------------------- 更新SNIFFER类嗅探器,增加截取LAN局域网中FTP密码功能 ======================================================================= 血与荣誉网络通信引擎2010PT-1.0.6.1001 Build0905 增加Sniffer嗅探器功能,比较简单,支持获取一些比较简单的信息,以后在改造 增加ICMP协议 PING功能,比1.0.3版本PING更强大,完全采用协议PING 支持域名转IP,支持目的地延时获取,支持丢包率获取 增加原始UDP信息发送功能,以后会改造到不提供自身IP发送自定义协议封包 增加路由跟踪功能,可以跟踪一个IP经过多少路由和CMD那个一样 增加控件安全属性代码,可以提升下在IE中的安全属性 添加控件初始化方法,目前控件初始化只做SOCKET初始化 添加控件销毁方法,目前也只是清理SOCKET资源,如果不使用那么控件也会自动清理 ------------------------------------------------------------------ 更新socket初始化加载代码位置,控件初始化的时候就会加载WINSOCK。失败将退出 更新继续完善错误管理提示定义符号 ============================================= 血与荣誉网络通信引擎2010PT-1.0.5.1001 Build0801 增加IOCP服务器类的封装,类构建已经完成。增加内存池技术 增加IOCP序列化支持,防止数据错乱情况发生 增加IO高性能函数,优化IOCP在对完成端口处理的性能 增加IP广播通信类,接收端和发送端都封装在一个类中 增加IP多播通信功能。支持加入多播组和离开多播组,已封装完毕 ----------------------------------------------------------------------- 完成对SELECT的改造,SELECT采用多线程客户数据处理技术 ============================================ 血与荣誉网络通信引擎2010PT-1.0.4.1001 Build0712 增加心跳包检测机制,如果机器非正常断网现在将不会阻塞数据 增加事件选择模型和多线程技术。是多线程非线程池技术 增加OVERLAPPED+THREADPOOL技术,可以承载成千上万的客户 ============================================ 血与荣誉网络通信引擎V2010PT-1.0.3.1001 Build0610 增加内存池管理功能模块,独立WIN32 DLL 增加网络连接方式信息获取功能 增加线程池管理功能模块,独立WIN32 DLL 增加协议类集成包环境开发,增加协议包PING功能,和DOS下的PING一样 增加判断某个端口是否开启的功能,TCP和UDP都可以判断 增加网络流量上传下载获取功能,返回KB。计算机总流量 ============================================== 血与荣誉网络通信引擎V2010PT-1.0.2.1001 Build0507 增加获取HTTP文件大小的功能。返回B或者KB或者MB 增加网络HTTP下载文件的功能。支持回调函数显示下载大小和进度和速度 增加注册表管理功能,读取,写入和设置以及取到权限 -------------------------------------------------------- 继续完善错误代码信息提示标识符 =========================================== 血与荣誉网络通信引擎V2010PT-1.0.1.1001 Build0406 增加文本分割功能,HTTP协议分割的时候方便 增加Select模型函数-TCP服务器。最多预定义支持500客户在线 增加异步选择模型-TCP服务器,最多支持300客户同时在线 增加网络时间对时功能,采用全球指定网络事件服务器 增加读取内网IP地址的功能 增加读取本机名称的功能 增加获取外网IP地址的功能 增加外网IP地址解析功能,支持纯真数据库和网络数据库 ====================================================== 血与荣誉网络通信引擎2010年2月20号 项目成立 模型搭建,技术架构,编程模式,开发方式,目录结构树