我正在尝试制作一个双重用途的软件包,但我在升级时遇到了问题。
默认情况下,我的财产是
ALLUSERS=2
和MSIINSTALLPERUSER=1
readyToInstall
如果选中“为所有用户安装”对话框,我使用 SetProperty 放置ALLUSERS=1
和MSIINSTALLPERUSER={}
(只是为了确定)。
该部分工作正常,注册表设置在 HKLM 和 Program Files 中的文件。
然而,在升级过程中......我有一个自定义操作,AppSearch
在密钥是否在 HKLM 之后检查它设置ALLUSERS=1
和MSIINSTALLPERUSER={}
.
如果我进行小更新,则文件已正确升级。
如果我进行重大更新,注册表仍在 HKLM 中,但文件切换到LocalAppData
(实际上它遵循默认值),忽略了我ALLUSERS
在AppSearch
. (我什至尝试在迁移功能状态之后强制它只是为了模仿 UI,但它也没有工作)。
有没有办法用两用包进行重大升级?