Updater.exe使用文件“ Updater.ini ”(如果使用实际安装程序分发程序,则使用“ Uninstall.ini ” ),其中包含有关程序的信息:名称,版本,产品GUID,更新信息文件的URL等。 。这两个文件(Updater.exe和Updater.ini)必须位于应用程序的主文件夹中:
要创建文件“ Updater.ini”并将这两个文件复制到应用程序的文件夹中,请使用“实际更新程序配置工具”(文件Config.exe,请参见桌面上的快捷方式)。
注意:如果您使用Actual Installer分发程序,则不必使用配置工具来创建Updater.ini文件,因为Actual Installer在其界面(Installation \ Updater)中内置了Actual Updater功能。您可以使用配置工具来创建update.txt文件。
输入您的产品名称,然后选择主要可执行文件。如果您的应用程序没有主要的可执行文件,则只需从应用程序所在的文件夹中选择任何文件即可。在此文件夹中将创建更新程序文件。
为了检查更新,Updater.exe应该知道该应用程序的当前安装版本。有几种方法可以获取此版本:
从注册表(通过使用产品GUID)。如果您将程序与安装程序一起打包,请使用此方法。在下面阅读如何获取产品GUID。
来自主可执行文件。可执行文件(.EXE)包含存储在其资源中的版本信息,例如1.0;1.0.0.1
Updater.ini。当前安装的版本将存储在Updater.ini文件中。在版本字段中输入当前版本。更新时,新版本号将被Updater.ini文件覆盖。
什么是GUID?
产品GUID是用作产品标识符的参考号。
示例:{FCB1CDDE-F768-4D43-B1A1-BC019502DBC5}用于实际更新程序
大多数安装程序会为每个应用程序生成唯一的产品GUID,并在安装过程中将其写入注册表。下面是如何从一些安装得到它:
- Inno Setup的:打开脚本文件并查找“的AppId =”
- NSIS:“定义MUI_PRODUCT”打开脚本文件,并查找
- 实际的安装程序:请参见“通用-参数”
然后选择更新程序的首选选项,并指定更新信息文件的URL (请参见下文)。之后,单击“生成Updater.ini”。
更新信息文件 -是纯文本文件(例如update.txt),其中包含有关新版本的信息:新版本号以及下载此版本的链接:
1.2
http://www.mysite.com/myprogram.exe
您可以手动创建此文件,也可以使用“实际更新程序配置工具”来创建。该文件应上传到您的Web服务器,以便Updater.exe可以访问它。update.txt文件示例:http ://www.actualupdater.com/update.txt
每次发布程序的新版本时,也应在服务器上更新此文件。
2、它是如何工作的?
启动Updater.exe(作为自动检查更新,从“开始菜单\您的应用程序”或从应用程序菜单“帮助\检查更新”的“检查更新”快捷方式)时,Updater.exe将执行以下操作:
1从Updater.ini中读取程序信息,并提取当前安装的程序版本(从Regsitry,Main Executable或updater.ini);
2从指定的URL下载更新信息文件(update.txt);
3比较程序的新版本号和当前安装的版本号;
4如果较新或退出,则提示下载。
3、选件
使用产品名称作为更新程序标题 -将使用您的产品名称代替对话框/消息标题中的文本“ Actual Updater”。
允许用户更改更新程序选项 -用户将能够禁用/启用自动更新功能(和静音模式),更改更新频率。
使用下载器 -默认情况下,新版本链接会在默认浏览器中打开。选择此选项可添加Downloader.exe文件,该文件将下载新版本并自动启动它。
Update Main Executable-选择此选项,如果您在不安装安装程序的情况下分发应用程序,并且要进行更新,则只需用新的可执行文件替换主可执行文件。在更新过程中,新的主要可执行文件将被下载并复制到旧版本位置。
自动检查更新 -选择首选的更新频率-在Windows启动时,每天一次,每周一次或每月一次。通过Windows注册表(“运行”部分)执行“在Windows启动时”。其他功能通过任务计划程序执行。运行Updater.exe的默认时间是09:00。您可以通过Update Parameters更改此时间。
更新参数 -指定其他参数:
-allowsilentupdate-添加此参数以允许用户启用/禁用自动更新的静默模式
-taskparam [ params ]-设置Task Scheduler的参数,例如将默认时间更改为10:00:-taskparam [/ ST 10:00]
-notaskwhenavailable-添加此选项可删除任务计划程序的选项“错过计划的开始后尽快运行任务”。