大家好,我是公众号三分学堂的郭立元~
和朋友聊天是谈论如何流入QQ群,解决核心问题是别人为什么成群结队,我们要做的是提供“诱饵”,成群结队以后可以给对方需要的东西或服务。
那我们做脚本的能提供什么诱饵?肯定是脚本啊,那么要解决的就是怎么把脚本和QQ群联系在一起的问题。
一个简单的方式是把脚本放到QQ群里面,别人进群才能下载,这是比较常用的方法。
不过别人进群后转发脚本给其他人,其他人使用脚本时其实和我们的QQ群就没有联系了。
为了增强关联性,我们把QQ群作为脚本运行的验证,只有在使用设备上登录过加群的QQ,才能验证通过使用脚本。
这种验证的原理是读取设备上的QQ数据库,查看当前QQ所加群中是否有我们的群。
具体步骤:
1,找到QQ数据库的路径:
/data/data号.db
在路径中可以看到数据库名称是QQ号,这就是说要知道完整的路径,要获取到QQ号,可以是让用户自己填写,也可以遍历所有数据库文件,从中找到QQ号。
两种获取QQ号的方法中我个人是觉得让用户自己填写更好,因为当设备中登录过多个QQ的时候,遍历出来就是多个结果。这样就不准了。
2,读取数据库文件,查找群号做验证
Import ";
Dim QQ="453485278" //做成输入框,让用户填写
Dim q群号="242971687" //你自己的QQ群
Dim DBpath = "/data/data;&QQ&".db"
Dim ret = (DBpath, "FTSTroopTime")
If Len(ret) = 0 Then
TracePrint "验证失败,请加入QQ群"&q群号&"完成验证"
EndScript
End If
For i = 1 To Len(ret)
TracePrint ret[i]["mUin"]
If ret[i]["mUin"] = q群号 Then
TracePrint "验证群通过"
Exit For
End If
If i = Len(ret) Then
TracePrint "验证失败,请加入QQ群"&q群号&"完成验证"
EndScript
End If
Next
我在测试的时候发现,这钟方法也是存在bug,比如进群后又退出群,在QQ数据库里面还是会有这个群记录。
在QQ数据库中还有很多其他的数据,但是是加密的,破解加密还没搞定,所以只能是用这个没加密的数据做验证,等以后把QQ加密破解了,在优化这个方法。
=正文完=