当前位置:→ 股海网股软教程 → 正文
  • 易语言SOCKS5代理例程

  • 相关简介:易语言SOCKS5代理例程 .版本 2 .支持库 shellEx .程序集 类模块_代理服务器_TCP_客户 .程序集变量 客户, 客户 .程序集变量 子程序, 子程序指针 .程序集变量 流程, 短整数型 .程序集变量 地址, 文本型 .程序集变量 端口, 整数型 .程序集变量 数据, 字节集 .子程序 _初始化, , , 当基于本类的对象被创建后,此方法会被自动调用 .子程序 _销毁, , , 当基于本类的对象被销毁前,此方法会被自动调用 .子程序 连接, , 公开 .参数 处理子程序, 子程

  • 文章来源:股海网作者:股海网发布时间:2017-11-30浏览次数:下载次数:0

易语言SOCKS5代理例程

.版本 2
 .支持库 shellEx

 .程序集 类模块_代理服务器_TCP_客户
.程序集变量 客户, 客户
.程序集变量 子程序, 子程序指针
.程序集变量 流程, 短整数型
.程序集变量 地址, 文本型
.程序集变量 端口, 整数型
.程序集变量 数据, 字节集

.子程序 _初始化, , , 当基于本类的对象被创建后,此方法会被自动调用

 

.子程序 _销毁, , , 当基于本类的对象被销毁前,此方法会被自动调用

 

.子程序 连接, , 公开
.参数 处理子程序, 子程序指针, , 参见本子程序内部的注释部分
.参数 目的服务器地址, 文本型, , 可以为域名或ip地址
.参数 目的服务器端口, 整数型

.如果真 (是否已创建 (SOCKS5代理窗口) = 假)
     载入 (SOCKS5代理窗口, , 假)
 .如果真结束
 复制窗口组件 (SOCKS5代理窗口.TCP_客户, 客户)
客户.标记 = 到文本 (取数组成员数 (代理服务器_TCP_客户) + 1)
地址 = 转换为IP地址 (目的服务器地址)
端口 = 目的服务器端口
 客户.连接 (SOCKS5代理窗口.代理地址.内容, 到数值 (SOCKS5代理窗口.代理端口.内容))
子程序 = 处理子程序
 流程 = 1
客户.发送数据 ({ 5, 0 })
 ' 处理子程序 必须有一个文本型参数 参数的第一个文本是各种指令
' 可以使用 取指令标记(参数) 获得,具体指令意义参见下表:
' 0:实际数据 可用 取回数据() 返回实际数据
' 1:未知的连接方式(除无身份验证和用户名/密码方式以外的)
' 2:用户名或密码错误
' 3:连接目标服务器时错误
' 4:连接成功
' 9:连接断开
' 参数的剩余文本表示数组标记
' 可以使用 取指令数组标志(参数) 获得
' 例如 收到 0 指令表示有数据收到可以采用 代理服务器_TCP_客户[取指令数组标志(参数)].取回数据() 返回实际的数据

.子程序 收到数据, , 公开, 此子程序会自动运行,用户不需要更改或调用
.参数 代理服务器的数据, 字节集
.局部变量 数据包, 字节型, , "10"

 .判断开始 (流程 = 0)
     数据 = 代理服务器的数据
    执行子程序 (子程序, “0” + 客户.标记)
 .判断 (流程 = 1)
     .判断开始 (取字节集右边 (代理服务器的数据, 1) = { 0 })
         输出调试文本 (“无身份验证方式”)
         客户.发送数据 (返回连接字节集 ())
         流程 = 3
     .判断 (取字节集右边 (代理服务器的数据, 1) = { 2 })
         输出调试文本 (“有密码验证方式”)

         客户.发送数据 (取密码连接 ())
         流程 = 2
     .默认
        执行子程序 (子程序, “1” + 客户.标记)
     .判断结束

.判断 (流程 = 2)
     .如果 (代理服务器的数据 = { 1, 0 })
         客户.发送数据 (返回连接字节集 ())
         流程 = 3
     .否则
        执行子程序 (子程序, “2” + 客户.标记)
     .如果结束

.判断 (流程 = 3)
     .如果 (取字节集中间 (代理服务器的数据, 2, 1) = { 0 })
         流程 = 0
         执行子程序 (子程序, “4” + 客户.标记)
     .否则
        执行子程序 (子程序, “3” + 客户.标记)
     .如果结束

.默认

.判断结束


.子程序 取回数据, 字节集, 公开

 返回 (数据)

 .子程序 断开连接, , 公开, 此子程序会自动运行,用户不需要更改或调用

 执行子程序 (子程序, “9” + 客户.标记)

 .子程序 返回连接字节集, 字节集, , 此子程序会自动运行,用户不需要更改或调用
.局部变量 ip, 文本型, , "4"
 .局部变量 数据包, 字节型, , "10"

 ip = 分割文本 (地址, “.”, 4)
数据包 [1] = 5  ' 版本号
 数据包 [2] = 1  ' 连接模式
 数据包 [3] = 0  ' 保留
 数据包 [4] = 1  ' ipv4地址类型
 数据包 [5] = 到数值 (ip [1])  ' 地址1
数据包 [6] = 到数值 (ip [2])  ' 地址2
数据包 [7] = 到数值 (ip [3])  ' 地址3
数据包 [8] = 到数值 (ip [4])  ' 地址4
数据包 [9] = 端口 \ 256  ' 端口1
数据包 [10] = 端口 % 256  ' 端口2
返回 (到字节集 (数据包))

 .子程序 发送数据, 逻辑型, 公开
.参数 数据, 字节集

 返回 (客户.发送数据 (数据))

 .子程序 作废, , 公开

 客户.断开连接 ()
客户.销毁 ()
数据 = {  }

 

 ☟问题反馈 ☞┄┄┄┄┄┄┄┄┄┄→收藏资源:

易语言SOCKS5代理例程

  • 下载资源所需积分

    0

  • 当前拥有积分

    0

上传会员: 
股海网
文件大小: 
Bytes
上传时间: 
2017-11-30
下载积分: 
-
免责声明: 
请仔细阅读并同意后才能下载
本附件为用户分享上传,股海网没有对文件进行验证,不能保证下载资源的准确性、安全性和完整性,也不保证下载资源能正常安装和使用,且下载后扣除的积分无法退还,除非您充分理解并完全接受本声明,否则您无权下载。
本站对提供下载的软件、指标、资料等不拥有任何权利,其版权归该下载资源的合法拥有者所有。本附件仅供学习和研究使用,不得用于商业或者非法用途,如有侵犯您的版权, 请参看 《股海网侵权处理流程》《股海网免责声明条款》
点击下载无反应时,更换主流浏览器重新登录操作,如360浏览器、Edge浏览器、谷歌浏览器,个别浏览器有不兼容现象。
勾选以下表示您已经阅读并同意以上声明才能下载本文件,扣除积分无法退还!
我已阅读所有条款规定, 请点我同意 所有条款内容!我自愿下载!
提示:如下载失败,请点关闭刷新此页面或提交问题反馈给管理员→
关闭

关于我们 - 联系我们 - 隐私政策 - 免责声明 - 下载帮助 - 广告合作 - SiteMap - TOP
增值电信业务经营ICP许可证:湘B2-20210269 湘ICP备09016573号-10 湘公网安备43108102000040号
Copyright © 2021 铭网科技,All Rights Reserved.