|
马上加入TC
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
先来说一下我的想法:利用网站的服务器来保存自己的验证文件;
我的思路是:
先把一个有意义的TXT文本文档上传至服务器哦,只要有内容就可以;
然后利用系统COM组件进行下载;
保存的文件最好使用随机文件名,尽量保证每次保存的文件名的不一样;
利用TC提供的函数读文件来获取文档内容进行对比;
从而判断脚本是否可以使用.
- 文件.删除(完整路径)
- 调试输出(内容)
- 如果(内容=="文件内容")//内容必须于文本文档一致
- 返回 真
- 否则
- 返回 假
- 如果结束
- 功能结束
- 功能 随机文件名()
- 文件名 = "", 内容
- 遍历(i = 0; i < 6; i++)//文件名个数
- //在选择语句内得到文件名 内容
- 选择(辅助.随机数(1,3))
- 条件 0: //利用ASCII码表内每个字母和汉字对应的数值.通过字符串,格式化方式转换我们想要的字母组合
- 内容 = 字符串.格式化("%c",辅助.随机数(#4E00,#9fa5))//汉字
- 条件 1:
- 内容 = 字符串.格式化("%c",辅助.随机数(48,57))//数字
- 条件 2:
- 内容 = 字符串.格式化("%c",辅助.随机数(97,122))//小写字母
- 条件 3:
- 内容 = 字符串.格式化("%c",辅助.随机数(65,90))//大写字母
- 选择结束
- 文件名 = 文件名 & 内容
- 遍历结束
- 返回 文件名
- 功能结束
- //把网络上的文件下载到本地 ;
- //此函数可以下载各种类型的文件,例如exe,图片,网页,压缩,等等 ;
- //参数1:文件地址 ;
- //参数2:文件本地存放的地址 ;
- 功能 下载文件(文件地址,保存路径)
- http=com("Microsoft.XMLHTTP")//创建一个com对象
- http.Open("get", 文件地址, false)//以get模式打开文件
- http.setRequestHeader("Cache-Control","no-cache")//不使用本地缓存数据,防止每次数据一样
- http.send("")
- t=system.gettickcount()
- while(http.ReadyState != 4)
- help.sleep(100)
- if((system.gettickcount()-t)>5000)
- return false
- endif
- endwhile
- body=http.ResponseBody
-
- http=null
- stream=com("ADODB.Stream")//文件操作的对象
- stream.Type=1//这个我也不懂,参数就是这么写的
- stream.Open//打开文件流操作
- stream.write(body)//把文件流写入内存(猜测的)
- stream.saveToFile(保存路径,2)//然后把文件保存成二进制数据的指定文件
- stream.Close//关闭文件流操作
- stream=null
- 功能结束
- 功能 退出_点击()
- 辅助.退出()
- 功能结束
- 功能 开始_点击()
- //这里添加你要执行的代码
- 线程.开启("网络验证.验证线程","")
- 功能结束
- 空间结束
复制代码
本人学习的时间比较短,如果有说错的地方请包涵.
|
|