精易论坛

标题: 软件更新例程 [打印本页]

作者: 诚悦科技    时间: 2023-7-1 20:44
标题: 软件更新例程
本帖最后由 诚悦科技 于 2023-7-2 20:41 编辑

个人用的软件更新程序 分享给新手
新更新程序.e (880.46 KB, 下载次数: 120) 采用精易模块 直接论坛下载

开源代码
  
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
变量名类 型数组备 注
下载参数任务参数  
下载任务下载对象  
下载状态整数型  
下载信息字节集  
文件大小双精度小数型  
下载地址文本型0 
文件名文本型  
版本号文本型  

子程序名返回值类型公开备 注
__启动窗口_创建完毕  
' 调用方法:启动更新  运行 (取运行目录 () + “\更新程序.exe ” + 网络版本 + “|” + 更新地址, 假, )
取命令行 (下载地址)
程序_禁止重复运行 (“sagdhjsadgfjdsfsdajfgsfasdklgfjasdkg”, 真, “程序已经运行,请勿重复打开”, #警告图标, )
如果 (取数组成员数 (下载地址) ≠ 1)
销毁 ()
文件名 = “\”文本_取右边 (下载地址 [1], “update/”, 1, )
版本号 = 文本_取左边 (下载地址 [1], “|”, 1, )
下载参数.类型 = #传送常量 .下载
下载参数.文件地址 = 文本_取右边 (下载地址 [1], “|”, 1, )
下载参数.线程等待超时 = 1000
下载参数.默认线程数 = 5
下载参数.本地文件路径 = 取运行目录 () + 文件名
下载参数.连接超时 = 5000
下载参数.发送超时 = 5000
下载参数.接收超时 = 10000
下载参数.接收大小 = 10240
下载参数.交互回调函数 = &交互回调函数
下载任务.增加新任务 (下载参数)
如果真 (文件是否存在 (取运行目录 () + 文件名))
透明标签1.标题 = “文件正在解压中,请稍后...”
删除文件 (取运行目录 () + 文件名)
进程_终止进程 (“主程序.EXE”, )

子程序名返回值类型公开备 注
交互回调函数整数型 
参数名类 型参考可空数组备 注
消息类型整数型
线程信息整数型
参数3整数型
参数4整数型
对象信息整数型
判断 (消息类型 = #传送常量 .下载上传开始)
时钟1.时钟周期 = 10
时钟2.时钟周期 = 100
文件大小 = 参数3
' 置文件属性 (取运行目录 () + 文件名, 2)
判断 (消息类型 = #传送常量 .下载上传结束)
时钟1.时钟周期 = 0
时钟2.时钟周期 = 0
透明标签1.标题 = “文件正在解压中,请稍后...”
ZIP压缩1.解压 (取运行目录 () + 文件名, 取运行目录 ()“\”)
延迟 (5000)
删除文件 (取运行目录 () + 文件名)
透明标签1.标题 = “文件更新完成”
运行 (取运行目录 ()“\主程序.EXE”, 假, )
写配置项 (取运行目录 ()“\game.ini”, “deploy”, “Version”, 版本号)
结束 ()
判断 (消息类型 = #传送常量 .新下载线程启动)
判断 (消息类型 = #传送常量 .下载线程继续下载)
判断 (消息类型 = #传送常量 .线程正常结束)
判断 (消息类型 = #传送常量 .线程异常结束)
时钟1.时钟周期 = 0
时钟2.时钟周期 = 0
判断 (消息类型 = #传送常量 .存在同名文件)
判断 (消息类型 = #传送常量 .收到数据)
判断 (消息类型 = #传送常量 .下载数据范围)



返回 (0)
子程序名返回值类型公开备 注
_时钟1_周期事件  
进度条1.位置 = 四舍五入 (下载任务.取已下载长 () ÷ 文件大小 × 100, 0)
子程序名返回值类型公开备 注
_时钟2_周期事件  
透明标签2.标题 = 到文本 (四舍五入 (下载任务.取下载速度 () ÷ 1024, 2)) + “ KB/s”
透明标签3.标题 = 到文本 (四舍五入 (下载任务.取已下载长 () ÷ 文件大小 × 100, 0)) + “%”


i支持库列表   支持库注释   
downlib网络传送支持库
CCTS(未知支持库)
iext扩展界面支持库一
eCompress压缩解压支持库
spec特殊功能支持库

调用更新程序格式
  
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
变量名类 型数组备 注
网络版本文本型不能为空,否者更新程序闪退
本地版本文本型  
更新地址文本型不能为空,否者更新程序闪退

子程序名返回值类型公开备 注
__启动窗口_创建完毕  
网络版本 = “1.3”  ' 网络上获取到的版本信息(不能为空)
本地版本 = 读配置项 (取运行目录 ()“\game.ini”, “deploy”, “Version”, )
更新地址 = “http://cydn.vip/update/CSgame.zip”  ' 你需要更新的压缩文件的地址(zip格式)根据网址信息 修改更新文件代码获取文件名方式
如果 (到数值 (本地版本)到数值 (网络版本))
' 正常运行代码
运行 (取运行目录 ()“\更新程序.EXE ” + 网络版本 + “|” + 更新地址, 假, )
销毁 ()

配置文件game.ini 就是一个简单的配置文件

[deploy]
Version=1.0


作者: 衬心    时间: 2023-7-1 20:52
666666666
作者: Conquer    时间: 2023-7-1 21:00
感谢分享

作者: nszk    时间: 2023-7-1 21:14
66666666666666666666666666666
作者: 清风徐来2    时间: 2023-7-1 21:24
感谢分享
作者: ai185704529    时间: 2023-7-1 21:38
看看是啥样
作者: gaoqing    时间: 2023-7-1 21:39
谢谢分享
作者: 布点脚本师    时间: 2023-7-1 21:57
谢谢分享
作者: qq2518    时间: 2023-7-1 22:10
感谢分享。学习一下
作者: myl1712    时间: 2023-7-1 22:35
缺失CCTS.fne
作者: a1533759138    时间: 2023-7-1 23:51
瞧一瞧看一看
作者: a23333110    时间: 2023-7-2 01:06
开源精神必须支持~
作者: tete    时间: 2023-7-2 02:07

看看是啥样
作者: 光影魔术    时间: 2023-7-2 03:06
感谢分享
作者: asd87565408123    时间: 2023-7-2 03:32
        开源精神必须支持~
作者: 按键大师    时间: 2023-7-2 04:32
开源精神必须支持~
作者: tst80tst    时间: 2023-7-2 07:33
开源精神值得学习
作者: 君九    时间: 2023-7-2 07:58
支持库发下啊
作者: 一指温柔    时间: 2023-7-2 08:32
感谢分享
作者: mood1000    时间: 2023-7-2 08:42
没有支持库,大佬发下支持库
作者: xiaoniu1230    时间: 2023-7-2 09:10
感谢分享 支持开源 !
作者: 诚悦科技    时间: 2023-7-2 09:31
mood1000 发表于 2023-7-2 08:42
没有支持库,大佬发下支持库

支持库 就是精易模块

作者: 诚悦科技    时间: 2023-7-2 09:41
采用的精易模块 其余支持库都是系自带
  
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
变量名类 型数组备 注
下载参数任务参数  
下载任务下载对象  
下载状态整数型  
下载信息字节集  
文件大小双精度小数型  
下载地址文本型0 
文件名文本型  
版本号文本型  

子程序名返回值类型公开备 注
__启动窗口_创建完毕  
' 调用方法:启动更新  运行 (取运行目录 () + “\更新程序.exe ” + 网络版本 + “|” + 更新地址, 假, )
取命令行 (下载地址)
程序_禁止重复运行 (“sagdhjsadgfjdsfsdajfgsfasdklgfjasdkg”, 真, “程序已经运行,请勿重复打开”, #警告图标, )
如果 (取数组成员数 (下载地址) ≠ 1)
销毁 ()
文件名 = “\”文本_取右边 (下载地址 [1], “update/”, 1, )
版本号 = 文本_取左边 (下载地址 [1], “|”, 1, )
下载参数.类型 = #传送常量 .下载
下载参数.文件地址 = 文本_取右边 (下载地址 [1], “|”, 1, )
下载参数.线程等待超时 = 1000
下载参数.默认线程数 = 5
下载参数.本地文件路径 = 取运行目录 () + 文件名
下载参数.连接超时 = 5000
下载参数.发送超时 = 5000
下载参数.接收超时 = 10000
下载参数.接收大小 = 10240
下载参数.交互回调函数 = &交互回调函数
下载任务.增加新任务 (下载参数)
如果真 (文件是否存在 (取运行目录 () + 文件名))
透明标签1.标题 = “文件正在解压中,请稍后...”
删除文件 (取运行目录 () + 文件名)
进程_终止进程 (“主程序.EXE”, )

子程序名返回值类型公开备 注
交互回调函数整数型 
参数名类 型参考可空数组备 注
消息类型整数型
线程信息整数型
参数3整数型
参数4整数型
对象信息整数型
判断 (消息类型 = #传送常量 .下载上传开始)
时钟1.时钟周期 = 10
时钟2.时钟周期 = 100
文件大小 = 参数3
' 置文件属性 (取运行目录 () + 文件名, 2)
判断 (消息类型 = #传送常量 .下载上传结束)
时钟1.时钟周期 = 0
时钟2.时钟周期 = 0
透明标签1.标题 = “文件正在解压中,请稍后...”
ZIP压缩1.解压 (取运行目录 () + 文件名, 取运行目录 ()“\”)
延迟 (5000)
删除文件 (取运行目录 () + 文件名)
透明标签1.标题 = “文件更新完成”
运行 (取运行目录 ()“\主程序.EXE”, 假, )
写配置项 (取运行目录 ()“\game.ini”, “deploy”, “Version”, 版本号)
结束 ()
判断 (消息类型 = #传送常量 .新下载线程启动)
判断 (消息类型 = #传送常量 .下载线程继续下载)
判断 (消息类型 = #传送常量 .线程正常结束)
判断 (消息类型 = #传送常量 .线程异常结束)
时钟1.时钟周期 = 0
时钟2.时钟周期 = 0
判断 (消息类型 = #传送常量 .存在同名文件)
判断 (消息类型 = #传送常量 .收到数据)
判断 (消息类型 = #传送常量 .下载数据范围)



返回 (0)
子程序名返回值类型公开备 注
_时钟1_周期事件  
进度条1.位置 = 四舍五入 (下载任务.取已下载长 () ÷ 文件大小 × 100, 0)
子程序名返回值类型公开备 注
_时钟2_周期事件  
透明标签2.标题 = 到文本 (四舍五入 (下载任务.取下载速度 () ÷ 1024, 2)) + “ KB/s”
透明标签3.标题 = 到文本 (四舍五入 (下载任务.取已下载长 () ÷ 文件大小 × 100, 0)) + “%”


i支持库列表   支持库注释   
downlib网络传送支持库
CCTS(未知支持库)
iext扩展界面支持库一
eCompress压缩解压支持库
spec特殊功能支持库



作者: 诚悦科技    时间: 2023-7-2 09:43
米拉珍 发表于 2023-7-2 07:58
支持库发下啊

都是系统核心支持库
作者: 诚悦科技    时间: 2023-7-2 09:43
mood1000 发表于 2023-7-2 08:42
没有支持库,大佬发下支持库

都是系统核心支持库
作者: eeggo    时间: 2023-7-2 09:52
感谢分享
作者: 深圳梦    时间: 2023-7-2 12:04
开源精神必须支持~
作者: jia201314973    时间: 2023-7-2 12:17

作者: xf702    时间: 2023-7-2 12:35
学习一下。。。
作者: happyweeks365    时间: 2023-7-2 15:25
SetKeyText (GetRunPath () + “\game.ini”, “deploy”, “Version”, 版本号)
大佬这个文件发给我模仿下 谢谢 现在主程序运行什么也没有 请指点一下 谢谢
作者: happyweeks365    时间: 2023-7-2 15:29
运行一闪而过请缺少文件请指点一下 谢谢

作者: 诚悦科技    时间: 2023-7-2 16:47
happyweeks365 发表于 2023-7-2 15:25
SetKeyText (GetRunPath () + “\game.ini”, “deploy”, “Version”, 版本号)
大佬这个文件发给我模仿 ...

程序里面不是写了 调用方法吗
运行 (取运行目录 () + “\更新程序.exe ” + 网络版本 + “|” + 更新地址, 假, )
配置文件主要更新后的版本信息,写主程序时候 就可以吧需要更新的网络版本 和 配置文件版本做对比

game.ini(版本配置)
[deploy]
Version=1.2

作者: 诚悦科技    时间: 2023-7-2 16:50
happyweeks365 发表于 2023-7-2 15:29
运行一闪而过请缺少文件请指点一下 谢谢

要配合主程序 运行 ,运行 (取运行目录 () + “\更新程序.exe ” + 网络版本 + “|” + 更新地址, 假, )
没有参数 肯定会 退出
作者: 396384183    时间: 2023-7-2 16:57

开源精神必须支持~
作者: 诚悦科技    时间: 2023-7-2 17:05

主程序调用更新程序方法
  
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
变量名类 型数组备 注
网络版本文本型不能为空,否者更新程序闪退
本地版本文本型  
更新地址文本型不能为空,否者更新程序闪退

子程序名返回值类型公开备 注
__启动窗口_创建完毕  
网络版本 = “V1.3”  ' 网络上获取到的版本信息(不能为空)
本地版本 = 读配置项 (取运行目录 ()“\game.ini”, “deploy”, “Version”, )
更新地址 = “”  ' 你需要更新的压缩文件的地址(zip格式)
如果 (到数值 (本地版本)到数值 (网络版本))
' 正常运行代码
运行 (取运行目录 ()“\更新程序.EXE ” + 网络版本 + “|” + 更新地址, 假, )
销毁 ()


作者: 君九    时间: 2023-7-2 20:15
诚悦科技 发表于 2023-7-2 09:43
都是系统核心支持库

我的支持库都安装了也不行啊
作者: 诚悦科技    时间: 2023-7-2 20:39
米拉珍 发表于 2023-7-2 20:15
我的支持库都安装了也不行啊

提示少了啥

作者: 君九    时间: 2023-7-2 21:59
诚悦科技 发表于 2023-7-2 20:39
提示少了啥



少这个支持库

作者: 诚悦科技    时间: 2023-7-2 22:06
米拉珍 发表于 2023-7-2 21:59
少这个支持库

CCTS.zip (2.16 MB, 下载次数: 45) ccts超级支持库


补充内容 (2023-7-6 15:36):
我也不知道怎么下载不了 应该是论坛的问题 这支持库全名叫:超级支持库 (49.3#5版) 我测试了 好像不要这个库也可以
作者: 一指温柔    时间: 2023-7-3 08:41
感谢分享
作者: 君九    时间: 2023-7-3 08:43
诚悦科技 发表于 2023-7-2 22:06
ccts超级支持库

下不 了报错
作者: renjianhong48we    时间: 2023-7-3 09:13
感谢分享
作者: 莫小乐    时间: 2023-7-3 17:02
感谢分享
作者: pipicool    时间: 2023-7-5 19:17
学习一下
作者: wang2lang    时间: 2023-7-6 12:51
ccts超级支持库
下不 了报错
作者: ai185704529    时间: 2023-7-7 09:59
支持库不用的话就去掉啊
作者: 淘客推荐    时间: 2023-7-27 04:21
学习了 谢谢
作者: shuya1    时间: 2023-8-5 00:10
感谢分享,很给力!~
作者: kantal    时间: 2023-8-10 21:44
感谢分享。来支持一下
作者: 淘客推荐    时间: 2023-8-22 22:12
开源精神必须支持~
作者: shen110    时间: 2023-8-25 17:03
诚悦科技 发表于 2023-7-2 22:06
ccts超级支持库

下载不了
作者: 穷八代    时间: 2023-8-30 10:41
支持多文件吗
作者: jia201314973    时间: 2023-9-2 10:50
开源精神必须支持~
作者: 善有善报    时间: 2023-11-4 19:11
你这个 远程版本号  怎么获取的?直接网络地址?
作者: 诚悦科技    时间: 2023-11-4 20:50
善有善报 发表于 2023-11-4 19:11
你这个 远程版本号  怎么获取的?直接网络地址?

网络上 你设置好版本啊 主程序传递给升级程序
作者: wuyanqing187    时间: 2024-10-1 17:27
        开源精神必须支持~




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4