sgcWebSockets 4.4.0 包含的变更
[+] : 新增对 Rad Studio 10.4 Sydney 的支持。
[+] : 改进 Telegram API 组件,新增对 OSX64 的支持。
[+] : 改进 Telegram API 组件,新增对 Linux64 的支持。
[+] : 改进 Telegram API 组件,使用 SetTDJsonPath 设置 tdjson 库的路径。
[+] : 新增使用 Firemonkey 构建的 Telegram 演示。
[+] : 改进 Dataset 协议,为 UpdateMode 新增值 "upRefreshAll",若选择该值,每当数据集发生变更时,不再编辑数据集,而是更新数据集(当服务器和客户端共享同一数据库时非常有用)。
[+] : 为服务器和客户端组件新增属性 TLSOptions.VerifyDepth,表示中间证书颁发者的最大数量(默认值为零)。
[+] : 现在提供 Coturn 服务器作为 Windows 编译控制台应用程序。Coturn 是 WebRTC 协议的 STUN/TURN 服务器。
[+] : 改进 WAMP 1.0 协议,现在实现进度调用。客户端请求服务器方法,服务器在多个结果中返回响应。WAMP 演示已更新以展示其工作方式。
[+] : 改进 Ping 方法,若手动调用 ping,现在可以传递 ping 消息的字符串。
[+] : 改进服务器普通 TCP 连接,若启用了 HeartBeat,将发送消息以维持连接。
[+] : 新增 IOCP 演示,展示 Indy IOCP 简单服务器的工作方式。
[+] : 在 Indy 服务器中新增事件 OnTCPConnect,该事件在 TCP 连接后、WebSocket 握手前调用。
[*] : 严重错误:4.3.7 版本引入了一个错误,当 NotifyEvents 为 neAsynchronous 或 neSynchronous 时,同时接收多条消息,事件未被正确分发,导致消息损坏。
[*] : 修复 Telegram 客户端错误:解析 Telegram 消息时,MessageId 被定义为 Integer 而非 Int64 的问题。
[*] : 修复自定义 Indy + OpenSSL 1.1 错误:若证书有密码,则无法加载。修复需要在 IdCompilerDefines.inc 中启用编译指令 SGC_OPENSSL_API_1_1。
[*] : 修复自定义 Indy 错误:当启用 OPENSSL_NO_MD4 或 OPENSSL_NO_MD5 编译定义时编译出错的问题。(感谢 Sébastien 反馈。)
[*] : 修复 TsgcWebSocketServer_HTTPAPI 错误:启用 SSL 时内置 HTML 文件无法被服务的问题。
[*] : 修复 TsgcWebSocketServer_HTTPAPI 错误:启用身份验证时,有时请求未被正确处理的问题。
[*] : 修复 TsgcWebSocketServer_HTTPAPI 错误:内部缓冲区未正确初始化的问题。(感谢 David 反馈。)
[*] : 修复 TsgcWebSocketClient_WinHTTP 错误:动态加载 winhttp.dll 时,调用 WriteData 方法后返回错误 87(无效参数)的问题。
[*] : 修复 TsgcWebSocketClient_WinHTTP 错误:内部句柄未被清除的问题。(感谢 David 反馈。)
[*] : 修复 TsgcWebSocketClient_WinHTTP 错误:启用异步模式时连接未正确初始化的问题。
[*] : 修复 TsgcWebSocketClient_WinHTTP 关闭连接时的异常问题。
[*] : 修复在 Linux 上为 Lazarus 安装 sgcWebSockets 的错误:某些单元名称无效(Linux 区分大小写)。
[*] : 修复在 Linux 上为 Lazarus 安装 sgcWebSockets 的错误:包含 Indy 单元的文件夹名称无效(Linux 区分大小写)。
