精易论坛

标题: 借用花生壳做nei网穿透,远程服务支持库制作网络验证。 [打印本页]

作者: Ls3633    时间: 2021-2-27 17:40
标题: 借用花生壳做nei网穿透,远程服务支持库制作网络验证。
本帖最后由 Ls3633 于 2021-2-27 17:49 编辑

【实战】  借用花生壳做nei网穿透,远程服务支持库制作网络验证。

实现小白也能开发自己的网络验证的愿望。

(ps:一个新手在琢磨途中想做的记录贴,好不好的别嘲笑就是我行进路上做好的鞭策。)

补充内容 (2021-3-2 16:48):
PS:第一张

TCP.png (132.66 KB, 下载次数: 3)

TCP.png

作者: 特别nb    时间: 2021-2-27 17:45
好厉害的样子
作者: MeaningMe    时间: 2021-2-27 17:48
然后就被黑了
作者: 元老    时间: 2021-2-27 18:08
易语言的话建议学学HP-Socket吧~
作者: Ls3633    时间: 2021-2-27 18:12
首先肯定是下载安装并注册花生壳,
然后添加一条映射。
映射类型:TCP;
不使用模板;
外网域名使用花生壳自带的即可;
外网端口:动态端口;
内网主机:自己做服务器的机子查一下IP;
内网端口:只要是服务器的机子没有用的端口就可以(本测试内网端口30000)。

补充内容 (2021-3-2 16:49):
PS:第二步
作者: 花老板    时间: 2021-2-27 21:01
没想到花生壳如今这么漂亮的界面了,20年前难看死了
作者: Ls3633    时间: 2021-3-2 16:28

服务器:
  
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
子程序名返回值类型公开备 注
__启动窗口_创建完毕  
编辑框_动态.边框 = 5
编辑框_动态.背景颜色 = #黑色
编辑框_动态.是否允许多行 = 真
编辑框_动态.滚动条 = 2
编辑框_动态.对齐方式 = 1
编辑框_动态.输入方式 = 1
编辑框_动态.起始选择位置 = -1
编辑框_动态.文本颜色 = 61184
子程序名返回值类型公开备 注
动态_输出  
参数名类 型参考可空数组备 注
加入文本文本型
如果 (编辑框_动态.内容 = “”)
编辑框_动态.内容 = 加入文本
编辑框_动态.内容 = 编辑框_动态.内容 + #换行符 + 加入文本
编辑框_动态.起始选择位置 = 取文本长度 (编辑框_动态.内容) + 1
子程序名返回值类型公开备 注
__启动窗口_将被销毁  
结束 ()
销毁 ()
子程序名返回值类型公开备 注
_按钮_启动_被单击  
TCP_服务器.启动 (到整数 (编辑框_端口号.内容), &服务器处理函数, )
动态_输出 (“服务器已开启”)
子程序名返回值类型公开备 注
服务器处理函数  
参数名类 型参考可空数组备 注
参_消息地址整数型有客户连接到服务端返回0,有客户主动或意外断开与服务端的连接返回1,客户端发送字节流到服务器返回2,出错返回-1。
变量名类 型静态数组备 注
消息类型整数型 
消息类型 = TCP_服务器.取消息类型 (参_消息地址)
判断 (消息类型 = 0)
动态_输出 (“有客户连接到服务端”)
判断 (消息类型 = 1)
动态_输出 (“有客户主动或意外断开与服务端的连接”)
判断 (消息类型 = 2)
动态_输出 (“客户端发送字节流到服务器:”客户信息取回 (参_消息地址))
判断 (消息类型 = -1)
动态_输出 (“出错”)



子程序名返回值类型公开备 注
_按钮_终止_被单击  
动态_输出 (“服务器停止服务”)
TCP_服务器.停止 ()
子程序名返回值类型公开备 注
客户信息取回文本型 
参数名类 型参考可空数组备 注
参_消息地址整数型
变量名类 型静态数组备 注
请求代码文本型 
请求信息文本型 
TCP_服务器.取请求文本 (参_消息地址, 请求代码, 请求信息)
返回 (请求信息)
子程序名返回值类型公开备 注
_按钮_发送_被单击  
变量名类 型静态数组备 注
客户句柄数组整数型0
i整数型 
TCP_服务器.取客户数组 (客户句柄数组)
计次循环首 (取数组成员数 (客户句柄数组), i)
TCP_服务器.发送文本 (客户句柄数组 [i], 编辑框_发送消息.内容)
计次循环尾 ()


i支持库列表   支持库注释   
Exmlrpc远程服务支持库

客户端:
.版本 2
.支持库 Exmlrpc

.程序集 窗口程序集_启动窗口

.子程序 __启动窗口_创建完毕

编辑框_动态.边框 = 5
编辑框_动态.背景颜色 = #黑色
编辑框_动态.是否允许多行 = 真
编辑框_动态.滚动条 = 2
编辑框_动态.对齐方式 = 1
编辑框_动态.输入方式 = 1
编辑框_动态.起始选择位置 = -1
编辑框_动态.文本颜色 = 61184


.子程序 动态_输出
.参数 加入文本, 文本型

.如果 (编辑框_动态.内容 = “”)
    编辑框_动态.内容 = 加入文本
.否则
    编辑框_动态.内容 = 编辑框_动态.内容 + #换行符 + 加入文本
.如果结束
编辑框_动态.起始选择位置 = 取文本长度 (编辑框_动态.内容) + 1

.子程序 __启动窗口_将被销毁

结束 ()
销毁 ()


.子程序 _按钮_连接_被单击

.如果 (TCP_客户端.连接 (到整数 (编辑框_端口号.内容), 编辑框_服务器地址.内容, 假, &处理函数) = 真)
    动态_输出 (“客户端连接成功”)
.否则
    动态_输出 (“客户端连接失败”)
.如果结束


.子程序 处理函数
.参数 参_消息地址, 整数型

服务器信息取回 (参_消息地址)

.子程序 _按钮_断开_被单击

TCP_客户端.断开 ()
动态_输出 (“客户端已断开连接”)


.子程序 _按钮_发送_被单击

TCP_客户端.异步发送文本 (编辑框_发送消息.内容)
动态_输出 (“-” + 编辑框_发送消息.内容 + “-发送成功”)


.子程序 服务器信息取回, 文本型
.参数 参_消息地址, 整数型
.局部变量 服务器取回信息, 文本型

TCP_客户端.取返回文本 (参_消息地址, 服务器取回信息)
动态_输出 (“服务器取回信息:” + 服务器取回信息)
返回 (服务器取回信息)




作者: Ls3633    时间: 2021-3-2 16:41
Ls3633 发表于 2021-2-27 18:12
首先肯定是下载安装并注册花生壳,
然后添加一条映射。
映射类型:TCP;

小白头一回发帖,我发现第三条信息搁第二条信息上面呢,
不过没关系,问题不大,看得懂就行。
最后附上测试的两张图片,大功告成。

具体咋回事一看便懂。

网络验证的雏形应该大概也许备不住说不准应该这也算得上。
不就是少点什么嘛,问题不大,慢慢填充就是了。
作者: zp0802    时间: 2023-12-6 13:42
早点睡付付付付付付付付付付付付付付付付




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4