按键学院吧 关注:306贴子:3,509
  • 13回复贴,共1

【教程】让自己的脚本有更新功能

只看楼主收藏回复

检测更新这个功能是很重要的,如果脚本更新了,你得让用户及时的更新,你又不可能给每个用户都发一遍,所以这个功能是每个脚本作者都必须要做的
原理很简单,得到网页内容,网页里面写了版本号和下载地址,然后判断版本号是不是比当前版本号高
首先你得有一个自己的网站,我推荐“凡科建站”具体的我就不多说了,自己百度吧,另外不要用自己空间做更新提示的地方,没用的,访问会被拒绝
不知道为啥,代码竟然发不出去,只能发图片了,将就着看吧,反正我已经给了注释,看不懂也没办法,多学习学习吧




回复
1楼2015-10-22 20:20
    Dim 第一字符, 第二字符, 地址, 最新版本, 当前版本'定义变量,无需多说
    Call Plugin.Web.ClearTemp()'清除浏览器缓存,这个非常重要,不然每次获取到的网页内容都是第一次获取到的内容
    Delay 300
    返回值 = Lib.网络.获得网页源文件_增强版("这里的网址我就不发了,因为加进去就不能发帖了", "utf-8")
    '网页编码有两种,如果出现乱码那就换一种("utf-8"和"gbk")
    '获取版本号
    第一字符 = instr(返回值, "版本号:")'返回某字符串在另一字符串中第一次出现的位置。
    第一字符 = 第一字符 + 4'由于获取的是字符串开头的位置,要把“版本号:”这4个字符给忽略,所以加4
    最新版本 = Mid(返回值, 第一字符, 4)'这样就能获取到“版本号:”后面4个字
    当前版本 = 1.01
    If CSng(最新版本) > 当前版本 Then
    '获取下载地址
    第二字符 = instr(返回值, "结束")'你得知道下载地址的尾部在什么地方,所以特地在尾部写上一个结束来表明
    第一字符 = 第一字符 + 9
    地址 = Mid(返回值, 第一字符, 第二字符 - 第一字符)
    MessageBox "有新版本,请前往下载" & Chr(10) & "最新版本号为:" & 最新版本 & " 最新版下载地址为:" & 地址
    RunApp 地址
    EndScript
    Else
    MessageBox "当前已是最新版本"
    End If


    回复
    3楼2015-10-22 21:12
      这个6


      回复
      来自iPhone客户端4楼2016-12-07 00:13
        获取下载地址 不要封装就直接写中文? 返回值不用定义吗


        收起回复
        来自Android客户端5楼2016-12-08 15:59
          这不一样


          回复
          来自Android客户端7楼2017-06-05 23:47
            您好,网页端应该怎么写呢?我是菜鸟求教~


            回复
            8楼2018-05-13 23:43
              你好,我已经研究出来了,请问我想加个进度条有没有人帮忙解答的


              回复
              9楼2018-06-27 23:41
                厉害了


                回复
                10楼2021-11-02 16:27
                  检测更新这个功能挺实用的


                  回复
                  11楼2021-11-02 16:28
                    多学习学习吧


                    回复
                    12楼2021-11-08 17:13
                      666,学习了,感谢大佬分享~~


                      回复
                      13楼2021-11-13 14:53
                        支持一把~~


                        回复
                        14楼2021-11-16 18:23