- 初中三年级
- 2220985
- 396
- 0
- 532 朵
- 2506 个
- 334 个
- 480
- 2013-10-27
|
1#
t
T
发表于 2014-11-27 17:46
|
|只看楼主
游戏掉线重连-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文件路径
| 示例:- Call Plugin.File.WriteINI("帐号", "第一个帐号", "123456", "C:\帐号.ini")
复制代码 效果:- 您所在的用户组无法下载或查看附件
注意: 第四个参数ini文件路径。当该路径中没有这个ini文件的时候,writeini命令会先建立一个ini文件,然后再写入值。所以不需要我们辛苦的再跑去c盘新建一个ini文件。 ini文件读取命令:命令名称: | ReadINI 读取键值
| 命令功能: | 从配置文件里读取一个键值
| 命令参数: | 参数1 :小节名 参数2 :键值 参数3 :INI文件路径
| 示例:- Text = Plugin.File.ReadINI("帐号", "第一个帐号", "C:\帐号.ini")
复制代码 效果:- 您所在的用户组无法下载或查看附件
■ 怎么理解命令中的参数:小节名、键值 呢? 小节名用于分类,例如:要记录很多帐号和密码,那么帐号可以算作一类,密码是一类: [帐号] [密码]
键值是类中的成员,例如:第一个帐号,第二个帐号 第一个密码,第二个密码: [帐号] 第一个帐号=123456 第二个帐号=345678 [密码] 第一个密码=111111 第二个密码=111111
■ 也不是强制这么分类,小节名和键值的主要作用是为了标识你存放的信息,只要你知道你写入ini文件的时候,把你的信息写到什么位置,下次读取的时候知道在什么位置读取就可以了。
整体代码 - //////////////////ini 写入帐号密码部分////////////////////
- Call Plugin.File.WriteINI("帐号", "小编的帐号", "123456", "C:\帐号.ini")
- Call Plugin.File.WriteINI("帐号", "小编的密码", "654321", "C:\帐号.ini")
- ///////////////////////////////////////////////////////
- DimEnv sRect //定义环境变量 -因为这个值是要传递到线程中的,如果是局部变量是不支持线程的。
- PutAttachment "c:\","*.bmp" //释放图片
- hwnd = Plugin.Window.MousePoint() //获取鼠标指向窗口的窗口句柄
- Call Plugin.Window.Size(hwnd, 1024, 900)//设置窗口大小为1024,900
- sRect = Plugin.Window.GetClientRect(Hwnd)//获取窗口客户区大小
- ////////////////////////////////////////////////////////
- BeginThread 监视
- Sub 监视
- MyArray = Split(sRect, "|")
-
-
- //循环找掉线窗口,找到的话才进入第二个循环
- Do
- L = Clng(MyArray(0)): T = Clng(MyArray(1)) //获取窗口左上角坐标
- FindPic L+300,T+413,L+721,T+611,"C:\掉线.bmp",0.9,intX,intY //找掉线重连图片
- If intX > 0 And intY > 0 Then
- MoveTo L + 568, T + 566
- LeftClick 1
-
-
- //第二个循环,循环找登录按钮,判断是否是在输入账号密码的页面
- Do
- FindPic L + 160, T + 600, L + 259, T +695, "C:\登录.bmp", 0.9, intX, intY//找登录按钮图片
- If intX > 0 And intY > 0 Then
- TracePrint 1
- moveto L + 33, T + 643//鼠标移动到账号框
- LeftDoubleClick 1 //双击账号框选择账号
- KeyPress 8, 1//删除账号
- ////////////////读取ini文件////////////
- 帐号=Plugin.File.ReadINI("帐号", "小编的帐号", "C:\帐号.ini")
- saystring 帐号 //输入账号
- moveto L + 33, T + 681//鼠标移动到密码框
- LeftClick 1
- Delay 1000
- ////////////////读取ini文件////////////
- 密码=Plugin.File.ReadINI("帐号", "小编的密码", "C:\帐号.ini")
- SayString 密码 //输入密码
- moveto L + 222, T + 664//鼠标移动到登录按钮
- LeftClick 1//点击登录
- Exit Do
- End If
- Loop
-
-
- //第三个循环,循环找是不是首页,是的话点击进入区服,不是的话则进入下一个循环。
- Do
- FindPic L+173,T+684,L+238,T+724,"C:\用户中心.bmp",0.9,intX,intY //找游戏首页里的 用户中心 字体图片 判断是不是到了选择区服的界面
- If intX > 0 And intY> 0 Then
- MoveTo L + 72, T + 683
- LeftClick 1
- Delay 200
- Exit Do
- End If
- Loop
-
-
- //第四个循环,找角色界面的进入游戏按钮,找到的话则点击,没有找到则继续查找
- Do
- FindPic L+414,T+701,L+623,T+780,"C:\进入游戏.bmp",0.9,intX,intY //找角色界面里的 进入游戏 字体图片 判断是不是在角色选择界面
- If intX > 0 And intY > 0 Then
- MoveTo intX,intY
- LeftClick 1
- Exit Do
- End If
- Loop
- End If
- Loop
- End sub
复制代码 武尊掉线重连Q文件:- 您所在的用户组无法下载或查看附件
本文由按键学院提供技术支持 ━═━═━━═━═━━═━═━◥◤━═━═━━═━═━━═━═━ 按键学院开班【手机按键】 重金招募导师! 按键学院实战班
|