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修正没有导出转换后字符串大小的问题 ====================================================================================== 更多历史更新信息,请访问:https://www.xyry.org/UPHistory.txt