如何让 Inno Setup 使用来自不同安装的数据文件夹?

How to get Inno Setup to use the data folder from a different install?

我的 Windows 应用程序有一个 Inno Setup 安装程序,它在两个地方保存数据文件夹(由用户在安装期间编辑):

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\ChessOpeningsWizardProfessional2016_is1

HKEY_USERS\S-1-5-21-253778795-1228266984-3707684546-1000\Software\Bookup\Chess Openings Wizard Professional 2016\Installer Settings

我如何编写一个新的不同的单独安装程序,它只为此应用程序安装示例文档 - 并自动填充用户在安装应用程序时选择的数据文件夹?

换句话说,我如何获得...

DataDirPage.Values[0] := GetPreviousData('ChessOpeningsWizard2016DataDir', '');

...从上面的注册表项之一获取值?

一种方法是对两个安装程序使用相同的 AppId,因为另一个安装程序是主包的更新。

您可能希望将其与 UpdateUninstallLogAppName=no 结合使用,以便在 "Add or remove programs" 控制面板中保留主包的名称。


或者只使用像 RegQueryStringValue 这样的注册表函数。