我有两个MSI安装程序,BasicInstaller.msi和updateInstaller.msi。顾名思义,updateInstaller.msi是基本安装程序的更新版本(添加了一些新文件)。我已经在UI模式下安装了基本安装程序已将安装路径称为“D:/ MSIApp”。
我使用msiexec.cmd(这进入bat文件)以静默方式安装updateInstaller.msi,该文件覆盖BasicInstaller.msi创建的文件和注册表项。我可以使用以下命令
安装它msiexec / i updateInstaller.msi / qn TARGETDIR = D:/ MSIApp
现在,我正在寻找逻辑,其中在basicInstaller的安装路径中拾取并且updateInstaller安装在同一位置。简而言之,我想避免TARGERDIR切换硬编码。
如果我没有在msiexec中指定TARGETDIR,则updateInstaller将安装在默认的“C:/ programfiles / ...”位置。
有人可以帮我解决可能的解决方案选项。任何帮助表示感谢。
答案 0 :(得分:1)
这通常通过让安装程序设置InstallPath
(或类似命名的)注册表项来完成。后续安装程序可以读取该条目并将其用作其安装路径。
有关示例,请参阅this page。