• 按键公众号 :
按键精灵电脑版
立即下载

软件版本:2014.06
软件大小:22.9M
更新时间:2021-12-03

按键精灵安卓版
立即下载

软件版本:3.7.2
软件大小:46.2M
更新时间:2023-05-10

按键精灵iOS版
立即下载

软件版本:1.8.0
软件大小:29.2M
更新时间:2023-03-21

按键手机助手
立即下载

软件版本:3.8.0
软件大小:262M
更新时间:2023-05-30

快捷导航

登录 后使用快捷导航
没有帐号? 注册

返回列表 12345678» / 9
发新话题 回复该主题

[技术交流] 【院刊】-【201412期】游戏掉线重连-ini写入读取帐号密码 [复制链接]

1#

游戏掉线重连-ini写入读取帐号密码

您所在的用户组无法下载或查看附件

本文按键学院提供技术支持




上一期院刊中,我们说到了具备记录账号功能游戏的自动重连。那么,如果游戏没有自动记录账号的功能,我们要如何实现掉线自动重连呢?






步骤

我们继续上期的例子,武尊游戏掉线重连,当游戏代理平台不支持记录账号的情况下,如果重连游戏。

上期院刊链接:【院刊】-【201412期】简单几个步骤实现游戏掉线重连(上)



1循环找掉线提示信息,判断游戏是否掉线。掉线则点击确定按钮,返回到登录页面。[backcolor=rgb(249, 249, 249)][backcolor=rgb(255, 255, 255)] [backcolor=rgb(46, 139, 87)]

您所在的用户组无法下载或查看附件


[backcolor=rgb(249, 249, 249)][backcolor=rgb(255, 255, 255)]
2循环找登录界面的登录按钮 。[backcolor=rgb(46, 139, 87)]

您所在的用户组无法下载或查看附件



3找到登录按钮则说明已经返回到了登录页面。双击账号输入框。先删除原有账号,再输入用户所需要登录的账号名。(如果游戏记录的账号是最后一次登录的账号,而用户掉线之后要登录的账号也是这个账号,则此步骤可以省略)[backcolor=rgb(46, 139, 87)]

4点击密码输入框输入密码。然后点击登录按钮。[backcolor=rgb(46, 139, 87)]

5登录之后,我们查找 "用户中心" 字样来判断是不是已经到了选择区服的页面。
(选择区服界面和上一期不同,今天这里找图找的是"用户中心"而不是"武尊首页"字样,原因在于,登录界面里也有“武尊首页”字样,所以找它不能很好的区分登录界面和选择区服界面。)

您所在的用户组无法下载或查看附件




6找到“用户中心” 字样,则点击最近登录过的区服进入到选择角色的界面。

您所在的用户组无法下载或查看附件




7在角色选择界面查找“进入游戏”按钮,找到则点击进入游戏。

您所在的用户组无法下载或查看附件







号密码的记录和读取
找图判断掉线这些步骤和上一期的一样,这里就不详细说明了。 我们着重了解下帐号密码的记录和读取。




记录读取帐号的方法:

[backcolor=rgb(46, 139, 87)]使用qui界面里的输入框来保存帐号。
qui界面里画两个文本框,一个记录帐号,一个记录密码。
点击保存设置之后,帐号密码的值会自动写入到小精灵配置文件uservar.ini中。

注意: 小精灵的uservar.ini文件是公用的,就是说所有的小精灵都是使用这个文件记录配置信息。
每个小精灵有自己独有的编码,这些编码当作小节名,然后把自己的配置信息记入到小节名下。
如下图:

您所在的用户组无法下载或查看附件



[2f10d794-e2d1-41d3-b778-71b7f6c0460d] 是A.exe小精灵的编码

[5b6781f1-b143-439a-9496-c9fc01517e22] 是B.exe小精灵的编码



如果咱们想把脚本中的信息记入到小精灵配置文件uservar.ini中,可以建立一个小节名将信息记入进去。
但是如果其他童鞋恰巧也有一样的想法,而又非常巧合的,你们取的小节名也一样。
那么,当有人同时在用你们的脚本的时候,就会出现A脚本把值写进去,B脚本运行的时候读到了A脚本保存的值的情况。



所以,为了避免这种情况,脚本中要保存的信息,咱们还是自己建立一个ini文件来保存。
下面
来看看ini文件要怎么写入和读取的




ini文件的写入和读取



ini文件写入命令:
命令名称:WriteINI 写入键值
命令功能:向配置文件里写一个键值
命令参数:参数1 :小节名
参数2 :键值
参数3 :写入内容
参数4 :INI文件路径

示例:
  1. Call Plugin.File.WriteINI("帐号", "第一个帐号", "123456", "C:\帐号.ini")
复制代码
效果:

您所在的用户组无法下载或查看附件



注意:
第四个参数ini文件路径。当该路径中没有这个ini文件的时候,writeini命令先建立一个ini文件,然后再写入值。所以不需要我们辛苦的再跑去c盘新建一个ini文件。





ini文件读取命令:
命令名称:ReadINI 读取键值
命令功能:从配置文件里读取一个键值
命令参数:参数1 :小节名
参数2 :键值
参数3 :INI文件路径

示例:
  1. Text = Plugin.File.ReadINI("帐号", "第一个帐号", "C:\帐号.ini")
复制代码
效果:

您所在的用户组无法下载或查看附件




怎么理解命令中的参数:小节名、键值 呢?
小节名用于分类,例如:要记录很多帐号和密码,那么帐号可以算作一类,密码是一类:
[帐号]
[密码]

键值是类中的成员,例如:第一个帐号,第二个帐号 第一个密码,第二个密码:
[帐号]
第一个帐号=123456
第二个帐号=345678
[密码]
第一个密码=111111
第二个密码=111111

也不是强制这么分类,小节名键值的主要作用是为了标识你存放的信息,只要你知道你写入ini文件的时候,把你的信息写到什么位置,下次读取的时候知道在什么位置读取就可以了。




整体代码
  1. //////////////////ini 写入帐号密码部分////////////////////
  2. Call Plugin.File.WriteINI("帐号", "小编的帐号", "123456", "C:\帐号.ini")
  3. Call Plugin.File.WriteINI("帐号", "小编的密码", "654321", "C:\帐号.ini")
  4. ///////////////////////////////////////////////////////





  5. DimEnv sRect //定义环境变量 -因为这个值是要传递到线程中的,如果是局部变量是不支持线程的。
  6. PutAttachment "c:\","*.bmp" //释放图片
  7. hwnd = Plugin.Window.MousePoint() //获取鼠标指向窗口的窗口句柄
  8. Call Plugin.Window.Size(hwnd, 1024, 900)//设置窗口大小为1024,900
  9. sRect = Plugin.Window.GetClientRect(Hwnd)//获取窗口客户区大小
  10. ////////////////////////////////////////////////////////


  11. BeginThread 监视
  12. Sub 监视
  13. MyArray = Split(sRect, "|")


  14. //循环找掉线窗口,找到的话才进入第二个循环
  15. Do
  16. L = Clng(MyArray(0)): T = Clng(MyArray(1)) //获取窗口左上角坐标
  17. FindPic L+300,T+413,L+721,T+611,"C:\掉线.bmp",0.9,intX,intY //找掉线重连图片
  18. If intX > 0 And intY > 0 Then
  19. MoveTo L + 568, T + 566
  20. LeftClick 1


  21. //第二个循环,循环找登录按钮,判断是否是在输入账号密码的页面
  22. Do
  23. FindPic L + 160, T + 600, L + 259, T +695, "C:\登录.bmp", 0.9, intX, intY//找登录按钮图片
  24. If intX > 0 And intY > 0 Then
  25. TracePrint 1
  26. moveto L + 33, T + 643//鼠标移动到账号框
  27. LeftDoubleClick 1 //双击账号框选择账号
  28. KeyPress 8, 1//删除账号
  29. ////////////////读取ini文件////////////
  30. 帐号=Plugin.File.ReadINI("帐号", "小编的帐号", "C:\帐号.ini")
  31. saystring 帐号 //输入账号
  32. moveto L + 33, T + 681//鼠标移动到密码框
  33. LeftClick 1
  34. Delay 1000
  35. ////////////////读取ini文件////////////
  36. 密码=Plugin.File.ReadINI("帐号", "小编的密码", "C:\帐号.ini")
  37. SayString 密码 //输入密码
  38. moveto L + 222, T + 664//鼠标移动到登录按钮
  39. LeftClick 1//点击登录
  40. Exit Do
  41. End If
  42. Loop


  43. //第三个循环,循环找是不是首页,是的话点击进入区服,不是的话则进入下一个循环。
  44. Do
  45. FindPic L+173,T+684,L+238,T+724,"C:\用户中心.bmp",0.9,intX,intY //找游戏首页里的 用户中心 字体图片 判断是不是到了选择区服的界面
  46. If intX > 0 And intY> 0 Then
  47. MoveTo L + 72, T + 683
  48. LeftClick 1
  49. Delay 200
  50. Exit Do
  51. End If
  52. Loop


  53. //第四个循环,找角色界面的进入游戏按钮,找到的话则点击,没有找到则继续查找
  54. Do
  55. FindPic L+414,T+701,L+623,T+780,"C:\进入游戏.bmp",0.9,intX,intY //找角色界面里的 进入游戏 字体图片 判断是不是在角色选择界面
  56. If intX > 0 And intY > 0 Then
  57. MoveTo intX,intY
  58. LeftClick 1
  59. Exit Do
  60. End If
  61. Loop
  62. End If
  63. Loop
  64. End sub
复制代码
武尊掉线重连Q文件:
您所在的用户组无法下载或查看附件




本文按键学院提供技术支持

━═━═━━═━═━━═━═━◥◤━═━═━━═━═━━═━═━

按键学院开班【手机按键】 重金招募导师!

按键学院实战班


本主题由 超级版主 瑞祥幽冥狼 于 2023/7/16 16:13:53 执行 审核帖子 操作
按键学院免费交流群:376122403

按键学院招生计划
按键学院系统教程
2#

好厉害的说啊

3#

ddddddddddddddddddddddd

4#

好像很厉害

5#

不错,很好

6#


7#

[code][/code]

8#

水电费水电费为二位二位

9#

感谢楼主,谢谢楼主

10#

aaaaaaaaaaaaaaaaaaaaa

11#

5555533365

12#

666666

13#

sdfsfsfsdfsdfsdfsdfsdffsdsdfsdf

幻觉在美 也不真实
14#

个ini文件来保存

15#

oiuoiuouo

16#

好文

17#

学习ing

18#

好哈哈哈哈哈哈哈哈哈

19#

666666666666666666666666666666666666666666666666666

20#

58945894

发新话题 回复该主题