按键精灵免费实现自动更新功能

按键精灵是一个伟大的软件,我可以以通过它,制作出各种各样的脚本,实现各种各样强大的功能,至于自动更新,当然也不在话下!

这里,我将给大家抛砖引玉,讲解自动更新功能的实现。我的这个方法不需要FTP,可以做到完全的免费!

 

【特别说明】

按键精灵官方强烈反对作者将免费小精灵加入购买机制,对用户进行各方面的收费。需要请选用 商业小精灵或者简单游平台

而加入自动更新功能,按键精灵官方是不反对的,大家可以放心使用,不用担心任何侵权问题

 

【方法简述】

1、先找一个网页作为更新界面,可以是博客,也可以是帖子,支持随时更改其内容。每更新了一次版本,就在这个页面中修改版本号,以及更新包的下载地址

2、小精灵在每一次运行时,会自动访问一次该网页,并获取其源代码,得到当前的最新版本,并判断是否进行升级

 

【具体的实现步骤】

我写了很多的免费脚本,比如“多玩天下3工具箱”,就是使用这个方法进行更新。下面是我的实现步骤,大家可以参考,并且按自己的需求自由修改

首先按照上面“方法简述”中的步骤1,我们需要一个页面作为更新源,我的更新源是论坛上面的一个帖子,地址:http://bbs.duowan.com/forum.php?mod=viewthread&tid=30343040&fromuid=32278102

大家可以打开来看一下,注意的是我的帖子标题:

TM截图20130908124032

上面的“2.8.1”就是版本号,我每更新一次,就会修改一下这个值,当用户手中的小精灵判断到这个值变化了,就会弹出升级提示!

 

【按键精灵代码的写法】

使用这个方法自动更新,最精辟的自然还是在于脚本的写法,关于获取目标网页的源代码,可以调用Windows自带的对象Microsoft.XMLHTTP。对代码中自己所需要的部分进行提取,可以使用VB自带的函数split

下面是我的整段代码:

Event Form1.Load
    Call Plugin.Msg.Tips("正在检查更新...")
    nowver = "2.8.1" '本地保存的版本信息
    nowtime = "13-7-29"

    '获取网页源代码
    Set xmlHttp = CreateObject("Microsoft.XMLHTTP")
    xmlHttp.Open "Get", "http://bbs.duowan.com/forum.php?mod=viewthread&tid=30343040&fromuid=32278102", False
    xmlHttp.Send 

    '提取源代码中两个 title> 之间的片段(提取网页标题)
    Dim suzu
    suzu = split(XmlHttp.ResponseText, "title>", 3)
    Set xmlHttp = nothing

    If UBound(suzu) < 1 Then 
        Call Plugin.Msg.Tips("获取更新信息失败")

    Else

        '标题中是否存在当前的版本文字
        If instr(suzu(1), nowver) = 0 Then 
            usrret = MsgBox("工具箱已推出新版本,是否更新?", vbYesNo, "当前版本:"&nowver&"("&nowtime&")")
            If usrret = vbYes Then 
                '打开网页
                RunApp "http://bbs.duowan.com/forum.php?mod=viewthread&tid=30343040&fromuid=32278102"
            End If
        Else 
            Call Plugin.Msg.Tips("你使用的已是最新版:" & nowtime & "(" & nowver & ")")
        End If

    End If
End Event

添加在事件Event Form1.Load中,就可以让这段代码在小精灵运行时自动执行

 

【其他相关】

这里给大家介绍了自动更新的整体思路,只是抛砖引玉,所以就不再详细的写了,如果有什么疑问可以在下面的留言板中向我提出

如果需要在检查到更新后自动跳转至更新下载界面,可以在你的网页中将下载链接写成:

!@#$%http://www.xxx.com/up.zip!@#$%

然后在小精灵中使用split函数获取两个!@#$%之间的内容,并用runapp打开获取到的:http://www.xxx.com/up.zip

【关于split的用法】http://zy.anjian.com/?action-model-name-qmdn-itemid-345

这是按键精灵官方的教程,如果不清楚split,请务必读下这个

 

2 thoughts on “按键精灵免费实现自动更新功能

  1. #按键精灵免费实现自动更新功能# – 按键精灵是一个伟大的软件,我可以以通过它,制作出各种各样的脚本,实现各种各样强大的功能,至于自动更新,当然也不在话下! 这里,我将给大家抛砖引玉,讲解自动更新功能的实现。我… http://t.cn/z8aibVX

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注