由于自动更新功能可能涉及到一些系统操作,例如:修改注册表、修改配置文件、注册组件等,故一些作者反应自动更新功能比较简陋,所以拓展了自动更新的一些功能,使用内置自动更新(update.exe)时,将按步骤顺序执行所选命令,目前支持的命令请参考下方命令说明。

 

变量

 

$FilePath$ =  主程序所在文件夹,包含结尾的“\” 。例如:c:\windows\

$FileName$ = 主程序名,包含后戳。例如:我的程序.exe

$FullPath$ = 主程序完整路径。例如:c:\windows\我的程序.exe

注:主程序为调用自动更新的程序,例如A.exe调用更新程序update.exe,则主程序为A.exe

 

 

常用cmd命令

 

支持大多数cmd命令,需要简单学习一下cmd命令行指令,下方对部分常用cmd命令举例

结束进程:cmd /c taskkill /f /im $FileName$

写注册表:cmd /c reg add "HKEY_LOCAL_MACHINE\...略...\Run" /v "启动" /d "$FullPath$" /f

删除文件:cmd /c del $FilePath$aa.txt

组件注册:cmd /c regsvr32 /s $FilePath$a.dll

针对CMD比较复杂的语法,另有附加命令,如下示例。

 

 

配置文件操作

 

增改:config add 文件名 节名称 项目名 项目值

删除:config del 文件名 节名称 项目名

举例:config add $FilePath$config.ini setting remember true

注:任何参数中包含空格,请使用双百分号替代,例如:张%%三

 

 

弹出网址

 

弹出指定网址:openURL 网址

举例:openURL https://www.huweidun.cn

 

 

特别说明

 

在命令前增加“before空格” 则命令在更新前执行,不加默认在更新后执行,一行一个命令。

 

举例:

 

before cmd /c taskkill /f a.exe

before cmd /c taskkill /f b.exe

cmd /c regsvr32 /s $FilePath$a.dll 

openURL https://www.huweidun.cn

 

上述命令集执行流程为:1.关闭程序 -> 2.结束a.exe -> 3.结束b.exe -> 4.执行更新 -> 5.注册dll -> 6.打开网址 -> 7.打开主程序

注:第1步和第7步为固定执行,也就是在执行更新前会结束主进程,更新结束后会打开主进程。