易语言HPSocket连接池操作及常见问题解决方案

需积分: 43 16 下载量 154 浏览量 更新于2024-10-29 2 收藏 1.42MB ZIP 举报
资源摘要信息:"易语言-HPSocket同步操作例子" 1. 易语言和HPSocket的介绍: 易语言是一种简单易学的编程语言,主要用于Windows平台的软件开发。HPSocket是一个网络通信组件,提供了异步和同步两种方式,可以帮助开发者快速实现网络通信功能。 2. Mysql连接池的使用: 在使用易语言开发的软件中,可以使用Mysql连接池来实现数据库的连接管理。如果遇到连接池始终无法连接Mysql的问题,可能需要安装不同版本的驱动,x86系统推荐安装5.34或3.51版本,x64系统推荐安装3.51版本。安装驱动后,需要在连接池启动处修改驱动版本。另外,如果在64位系统中出现找不到ODBC驱动的问题,可能是因为使用了错误的ODBC配置管理器,此时应使用32位的ODBC配置管理器进行配置。 3. 连接池的连接问题: 如果连接池已经正确连接,但是无法查到数据,可能是参数填写不正确或者填写不完整,特别是驱动版本参数可能填写错误。此外,常见的ACCESS、SQLITE3等单机数据库不支持多线程,所以采用连接池无意义。但MSSQL数据库可以正常使用连接池进行操作。 4. HPSocket的性能和适用性: HPSocket组件封装了HPSocket通信库,具有较高的效率和稳定性。如果使用命令过程中遇到BUG,可以通过加入QQ群进行交流反馈。 5. 数据库连接池的编码问题: 如果数据库连接池启动成功,但是查询失败,可能是因为数据库编码不支持中文。需要在连接池启动参数中设置正确的编码,以确保与数据库编码一致。 6. 连接池的使用方法: 连接池的ADO参数表设计主要是为了防止SQL注入。操作流程是:先绑定参数,然后使用连接池的执行sql()命令进行增删改操作;使用取记录集()命令进行查询操作。如果服务器返回的是连接池的取记录集(),客户端使用记录集的导入()命令导入数据。 7. 连接池的远程连接: 连接池可以远程连接数据库,具体方法可以通过Navicat等软件,将mysql的连接信息中的host改为%即可实现远程连接。 8. 连接池的参数表使用: 连接池的参数表是为防止SQL注入而设计的。使用时,先绑定参数,增删改用连接池的执行sql()命令,查询用连接池的取记录集()命令,客户端用记录集的导入()命令导入服务器返回的数据。 通过以上内容,我们可以看到,易语言结合HPSocket可以实现复杂的网络通信和数据库操作。开发者需要注意驱动版本的选择、参数的正确配置以及编码方式的匹配,以保证程序的正常运行。同时,还需要注意操作的安全性,使用参数表防止SQL注入。对于远程连接数据库,可以通过一些工具软件实现。遇到问题时,可以寻求社区或QQ群的帮助。
2021-06-29 上传
HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通信框架,包含服务端组件、客户端组件和Agent组件,广泛适用于各种不同应用场景的 TCP/UDP/HTTP 通信系统,提供 C/C++、C#、Delphi、E(易语言)、Java、Python 等编程语言接口。HP-Socket 对通信层实现完全封装,应用程序不必关注通信层的任何细节;HP-Socket 提供基于事件通知模型的 API 接口,能非常简单高效地整合到新旧应用程序中。    为了让使用者能方便快速地学习和使用 HP-Socket ,迅速掌握框架的设计思想和使用方法,特此精心制作了大量 Demo 示例(如:PUSH 模型示例、PULL 模型示例、PACK 模型示例、性能测试示例以及其它编程语言示例)。HP-Socket 目前运行在 Windows 平台,将来会实现跨平台支持。 [15:47 2018/11/05] 同步更新到5.4.2正式版 [10:37 2018/10/23] 1、英文模块IHttpSyncClient组件大改 2、IWinHttp组件添加若干命令(PS:忘记是哪些了。。。) 3、升级到5.4.2 rc3 版本 4、增加client同步例子 [10:30 2018/9/25] v5.4.2 更新: > SSL 组件更新: ----------------- 1、SSL 组件可以手工启动 SSL 握手,从而可以对 SSL/Https 通信执行代理服务器设置等前置操作 2、SSL 组件(Server/Agent/Client)增加以下接口方法支持手工启动 SSL 握手 1) StartSSLHandShake():手工启动 SSL 握手,当通信组件设置为非自动握手时,需要调用本方法启动 SSL 握手 2) SetSSLAutoHandShake():设置通信组件握手方式(默认:TRUE,自动握手) 3) IsSSLAutoHandShake():获取通信组件握手方式 > 其他功能更新: ----------------- 1、所有可能导致 Socket 关闭的组件接口方法都在 Socket 通信线程中异步触发 OnClose 事件 2、Server 与 Agent 组件的 DIRECT 发送策略也支持通过 GetPendingDataLength() 方法实现流控 3、Server 与 Agent 组件的 Disconnect() 方法不再支持‘非强制断开’(仍然保留bForce 参数),调用时都会强制断开 4、OnSend 事件支持 三种同步策略 1) OSSP_NONE:不同步(默认) 1) OSSP_CLOSE:同步 OnClose 1) OSSP_RECEIVE:同步 OnClose 和 OnReceive(只用于 TCP 组件) > 升级说明: ----------------- 1、HP-Socket v5.4.2 完全兼容 HP-Socket v5.4.1 版本,可以直接替换升级 [18:41 2018/8/27] 1、修复英文模块submit_task最后一个参数错误问题,莫名其妙变成了字节集 [11:04 2018/8/27] 1、更新hpsocket为 beta11 2、submit_task 提交的任务不用去管回调里面的ptask参数。内部自动处理。 [16:57 2018/8/24] 1、修复中文模块部分命令错误问题 2、修复英文模块几处命令错误问题 3、增加websocket例程,本来httpclient里面人,有些人就是装看不见。 4、更新hpsocket为 beta9 [12:57 2018/8/15] 1、修复模块汇编的bug,原因是取消了ww汇编库 [11:55 2018/8/15] 1、模块更新为beta8 2、新增api: HP_Agent_IsConnected  -->  Agent.IsConnected() HP_Client_IsConnected  -->  Client.IsConnected() HP_Server_IsConnected  -->  Server.IsConnected() [9:18 2018/8/6] 1、性能优化 2、由于某些人吐槽中文版模块吐槽的厉害,遂决定不再更新中文版。 3、\demo\old 目录下放的是以前旧的例程源码,并不再更新 [12:57 2018/8/1] 修改模块IBufferPtr类,具体调用方式查看 TestEcho-New-Agent.e TestEcho-New-Server.e TestEcho-Http-Serve.e TestEcho-Http-Serve-bigfile.e  改名为 TestEcho-Ht