易语言鱼刺线程池拨号模板
鱼刺线程池拨号模板
此功能需要加载精易模块5.6和鱼刺类_多线程应用模块
.版本 2
.支持库 iext
.支持库 spec
.程序集 窗口程序集_启动窗口
.程序集变量 thread, 鱼刺类_线程池
.程序集变量 ADSL, ADSL拨号类
.程序集变量 Adslname, 文本型, , , 宽带连接名称
.程序集变量 Adsluser, 文本型, , , 宽带账号
.程序集变量 Adslpwd, 文本型, , , 宽带密码
.程序集变量 许可
.程序集变量 拨号频率
.程序集变量 线程次数, 整数型
.程序集变量 失败重登, 逻辑型
.程序集变量 失败重登次数
.子程序 _创建线程池按钮_被单击
thread.创建 (到整数 (线程数编辑框.内容))
许可 = _创建进入许可证 ()
.子程序 _生成账号密码按钮_被单击
.局部变量 X
.局部变量 I
超级列表框.全部删除 ()
.计次循环首 (20, X)
超级列表框.插入表项 (, 到文本 (X), , , , )
超级列表框.置标题 (X - 1, 1, 文本_取随机字母 (8))
超级列表框.置标题 (X - 1, 2, 文本_取随机数字 (6))
.计次循环尾 ()
.子程序 线程池控制
.局部变量 账号数
.局部变量 callAdsl
.局部变量 I
账号数 = 超级列表框.取表项数 ()
.计次循环首 (账号数, I) ' 循环整个列表
.如果真 (callAdsl = 拨号频率) ' 当投递出去的线程等于设置好的 拨号频率时,等待执行完成
.判断循环首 (线程次数 > 0)
程序_延时 (300)
调试输出 (“等待线程执行完成..”)
.判断循环尾 ()
调试输出 (“开始拨号..”)
ADSL.重拨_cmd (Adslname, Adsluser, Adslpwd)
程序_延时 (1000)
callAdsl = 0
调试输出 (“拨号完成,继续任务...”)
.如果真结束
callAdsl = callAdsl + 1
_进入许可区 (许可)
线程次数 = 线程次数 + 1
_退出许可区 (许可)
调试输出 (I - 1)
thread.投递任务 (&登录线程, I - 1)
.计次循环尾 ()
.子程序 登录线程
.参数 列表索引
.局部变量 user账号, 文本型
.局部变量 pwd密码, 文本型
.局部变量 登录结果, 文本型
.局部变量 I
_进入许可区 (许可)
超级列表框.置标题 (列表索引, 3, “登录中..”) ' 直接显示状态
user账号 = 超级列表框.取标题 (列表索引, 1)
pwd密码 = 超级列表框.取标题 (列表索引, 2)
_退出许可区 (许可)
.如果真 (登录 (user账号, pwd密码, 登录结果) = 假)
.如果真 (失败重登) ' 如果选中失败重登
.计次循环首 (失败重登次数, I) ' 循环重登次数
_进入许可区 (许可)
超级列表框.置标题 (列表索引, 3, “重登 ” + 到文本 (I)) ' 重登...
_退出许可区 (许可)
.如果真 (登录 (user账号, pwd密码, 登录结果)) ' 如果登录成功
_进入许可区 (许可)
超级列表框.置标题 (列表索引, 3, 登录结果)
线程次数 = 线程次数 - 1
_退出许可区 (许可)
返回 ()
.如果真结束
程序_延时 (到整数 (文本_取随机范围数字 (1000, 3000)))
.计次循环尾 ()
.如果真结束
.如果真结束
_进入许可区 (许可)
超级列表框.置标题 (列表索引, 3, 登录结果) ' 直接显示状态
线程次数 = 线程次数 - 1
_退出许可区 (许可)
.子程序 登录, 逻辑型
.参数 账号, 文本型
.参数 密码, 文本型
.参数 返回登录结果, 文本型, 参考 可空
.局部变量 I
I = 到整数 (文本_取随机范围数字 (1, 9))
' ///// 这里我写成随机的
.如果真 (I = 1) ' 随机生成1-10之间的数,如果是 1 则返回验证码错误
返回登录结果 = “验证码错误”
返回 (假)
.如果真结束
.如果真 (I = 2) ' 随机生成1-10之间的数....
返回登录结果 = “密码错误”
返回 (假)
.如果真结束
.如果真 (I = 3) ' 随机生成1-10之间的数....
返回登录结果 = “IP被限制”
返回 (假)
.如果真结束
' 其他的随机数均为成功
返回登录结果 = “登录成功”
返回 (真)
.子程序 _开始按钮_被单击
失败重登 = 失败重登选择框.选中
失败重登次数 = 到整数 (重登次数编辑框.内容)
拨号频率 = 到整数 (频率编辑框.内容)
线程_创建 (&线程池控制)
.子程序 __启动窗口_创建完毕
ADSL.取宽带用户名密码 (Adslname, Adsluser, Adslpwd)
运行结果:
总结
以上是 易语言鱼刺线程池拨号模板 的全部内容, 来源链接: utcz.com/z/348116.html