使用 Inno Setup 创建的更新程序不会更改应用程序版本

问题描述 投票:0回答:1

我正在使用 Inno Setup 创建一个应用程序安装程序(一个大文件)和一个更新程序,后者只是一个小文件,仅包含自上次安装/更新以来更改的文件。此更新文件还应该增加应用程序的版本号。我遵循了这个文档https://jrsoftware.org/isfaq.php#updateinstall,即我设置了

CreateUninstallRegKey=no
UpdateUninstallLogAppName=no

除了一件事之外,一切都很好。更新程序不会更改已安装应用程序列表中的版本号。例如,如果我使用安装程序安装了版本 1.1.2,然后运行具有参数

AppVersion=1.1.3
的更新程序。更新的文件已正确安装,但已安装应用程序列表中的版本(在 Windows 设置中)仍然显示版本 1.1.2。

我尝试更改为

UpdateUninstallLogAppName=yes
但这不会影响显示的版本号。当我查看注册表时,我仍然可以看到数字 1.1.2。

有什么想法可以解决这个问题吗?

inno-setup
1个回答
2
投票

您必须在脚本中明确更改它。

CreateUninstallRegKey=no
防止对
HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall
进行任何更新。

正如您链接到的页面所说:

更新不应在添加/删除程序列表中创建新条目,或更改原始应用程序的条目


您可以使用

[Registry]
部分条目(如下面的评论所示)或
RegWriteStringValue
功能

© www.soinside.com 2019 - 2024. All rights reserved.