易语言端口转发源码例程程序结合HPSocket模块,实现端口转发的功能。源码主要就是模拟服务器返回封包的操作,在用户进入时,转发器同时创建一个配套客户端,这个客户端用来模拟用户所有发送数据的操作。
.版本 2
.支持库 spec
.程序集 窗口程序集_启动窗口
.程序集变量 Server, TcpServer
.子程序 __启动窗口_创建完毕
.子程序 转发_断开
.参数 ID, 整数型
Server.断开 (ID, 真)
.子程序 转发_发送
.参数 ID, 整数型
.参数 字节集, 字节集
Server.发送 (ID, 字节集)
.子程序 _按钮1_被单击
Server.创建 ()
Server.设置回调事件 (, &S_Accetp, , , &S_recv, &S_Close, , )
Server.置最大连接数 (10000)
Server.置发送策略 (#发送策略_直接模式)
Server.启动 (“0.0.0.0”, 5186)
.子程序 S_Accetp, 整数型
.参数 连接ID, 整数型
.参数 套接字, 整数型
Server.置附加数据 (连接ID, 套接字)
' ------------------------------给当前用户创建一个配套的客户端
配套客户端_创建 (到整数 (连接ID), “222.186.50.103”, 5186)
返回 (#操作结果_成功)
.子程序 S_recv, 整数型
.参数 连接ID, 整数型
.参数 数据地址, 整数型
.参数 数据长度, 整数型
.局部变量 pBuffer, 字节集
' -------------------------------用户消息进入
pBuffer = 指针到字节集 (数据地址, 数据长度)
' ----------------------------------------------将用户数据投递给真实服务器’
' ---获取配套客户端
调试输出 (“用户数据到来”, 连接ID, “Len”, 数据长度)
配套客户端_发送 (到整数 (连接ID), pBuffer)
' ------------------------------------’
返回 (#操作结果_成功)
.子程序 S_Close, 整数型, , 错误
.参数 连接ID, 整数型
.参数 enOperation, 整数型
.参数 iErrorCode, 整数型
Server.删除附加数据 (连接ID)
' ------------------------------------玩家断开了服务端 那么配套客户端则断开服务器
配套客户端_断开 (到整数 (连接ID))
返回 (#操作结果_成功)
易语言端口转发
hpsocket 易语言
易语言网截转发
端口转发源码
易语言端口数据
hpsoket转发
易语言+端口转发
HPSocket+https转发