该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
.版本 2
.支持库 internet
.支持库 EThread
.支持库 downlib
.支持库 iext .子程序 版本比较
.局部变量 现行版本, 文本型
.局部变量 执行版本, 文本型
.局部变量 link, 文本型现行版本 = 到文本 (HTTP读文件 (“在网站上放置版本号的TXT文件”))
标签2.标题 = “服务器版本:” + 现行版本
执行版本 = 到文本 (读入文件 (“本地版本”))
标签3.标题 = “当前版本:” + 执行版本
.判断开始 (执行版本 ≠ 现行版本)
_启动窗口.标题 = “开始更新…”
编辑框1.内容 = 到文本 (HTTP读文件 (“更新内容公告”))
link = 到文本 (HTTP读文件 (“下载地址文件,在网站上放置。TXT比较方便,顺便,我喜欢在TXT内加一个结束符,以单行/end表示”))
下载地址 = 分割文本 (link, #换行符, )
启动线程 (&执行下载, , )
.默认
_启动窗口.标题 = “当前版本已经为最新”
信息框 (“当前版本已经为最新”, 0, )
更新完成 = 真 ' 更新是否完成为窗口可否被销毁的返回值
.判断结束
.子程序 执行下载更新完成 = 假
.计次循环首 (取数组成员数 (下载地址) - 1, i)
下载 (下载地址 [i])
.循环判断首 ()
延时 (200)
.循环判断尾 (下载状态 = 真)
.计次循环尾 ()
更新完成 = 真
信息框 (“程序更新完成”, 0, )
结束 ()
.子程序 下载
.参数 url, 文本型下载状态 = 真
下载参数.类型 = #传送常量.下载
下载参数.文件地址 = url
下载参数.线程等待超时 = 1000
下载参数.默认线程数 = 5
下载参数.本地文件路径 = 取运行目录 () + “\”
下载参数.连接超时 = 5000
下载参数.发送超时 = 5000
下载参数.接收超时 = 10000
下载参数.接收大小 = 10240
下载参数.交互回调函数 = &交互回调函数
下载任务.增加新任务 (下载参数) .子程序 交互回调函数, 整数型
.参数 消息类型, 整数型
.参数 线程信息, 整数型
.参数 参数3, 整数型
.参数 参数4, 整数型
.参数 对象信息, 整数型
.局部变量 文件大小, 文本型
.局部变量 任务总尺寸, 双精度小数型, 静态 .判断开始 (消息类型 = #传送常量.下载上传开始)
任务总尺寸 = 参数3
文件大小 = “文件大小:” + 到文本 (四舍五入 (任务总尺寸 ÷ 1024 ÷ 1024, 2)) + “MB ”
.判断 (消息类型 = #传送常量.下载上传结束)
下载状态 = 假
.判断 (消息类型 = #传送常量.新下载线程启动) .判断 (消息类型 = #传送常量.下载线程继续下载) .判断 (消息类型 = #传送常量.线程正常结束) .判断 (消息类型 = #传送常量.线程异常结束) .判断 (消息类型 = #传送常量.存在同名文件) .判断 (消息类型 = #传送常量.收到数据)
进度条1.位置 = 下载任务.取已下载长 () × 100 ÷ 任务总尺寸
进度标签.标题 = 文件大小 + 到文本 (进度条1.位置) + “%” + “(” + 到文本 (i) + “/” + 下载总数 + “)”
.判断 (消息类型 = #传送常量.下载数据范围)
_启动窗口.标题 = “开始更新中… 等待更新结束”
.默认 .判断结束
返回 (0)
有点修改,里面有些东西 自己可以添加修改的