包装函数:chkPass_
无返回值 chkPass(参数一)
参数一:是否强制连接服务器验证,0为否,1为是
描述:本函数包装 ks_cmd("check", "<randomstr>*******</randomstr><connect>0|1</connect>"),减少代码书写量
ks_cmd("check", 单元集数据) 该单元集数据没有advapi只是进行基本的验证操作和获取验证的基本数据
建议作者对该代码进行适当的效验修改
调用方式:
//自动判断是否连接服务器,建议每3-5分钟调用一次chkPass(0)
chkPass(0)
//或强制连接服务器验证
chkPass(1)
易语言例子中chkPass子程序原码(在SoftXLic_公用程序集里)
子程序名 | 返回值类型 | 公开 | 备注 |
chkPass | 文本型 | | 建议里边加上一些数据效验 |
参数名 | 类型 | 参考 | 可空 | 数组 | 备注 |
connect | 整数型 | | √ | | |
变量名 | 类型 | 静态 | 数组 | 备注 |
randomstr | 文本型 | | | |
sData | 文本型 | | | |
errinfo | 文本型 | | | |
Srandomstr | 文本型 | | | |
tmpstr | 文本型 | | | |
如果真 (是否为空 (connect)) |
connect = 0 |
如果真结束 |
randomstr = 到文本 (取启动时间 ()) ' 生成一个随机数 |
sData = ks_cmd ("check", "<randomstr>" + randomstr + "</randomstr><connect>" + 到文本 (connect) + "</connect>") |
FD_ (sData) ' 格式化数据,传址 |
如果真 (GD_ (sData, "state") ≠ "100") ' 验证失败 |
errinfo = GD_ (sData, "message") |
errinfo = errinfo + #换行符 + GD_ (sData, "webdata") |
信息框 (errinfo, 0, "验证失败") |
freeYZDLL () |
结束 () |
如果真结束 |
' 验证成功,要对数据读取和安全效验了 |
Srandomstr = GD_ (sData, "randomstr") ' 服务端返回的randomstr |
' 这里只是做简单的等于比对,更多效验请充分发挥你的脑洞(在例子里写出来就没有什么安全性可言) |
如果真 (randomstr ≠ Srandomstr) ' 先效验一下返回的randomstr单元的值是不是和传入值相同,不同关闭程序 |
freeYZDLL () |
结束 () |
如果真结束 |
返回 (sData) |