如何为Install4j生成的MSI指定UpgradeCode以卸载旧Wix MSI
如何在Install4j生成的MSI中指定UpgradeCode以兼容旧Wix MSI升级?
我们项目原使用Wix打包MSI安装程序,近期迁移到Install4j的MSI包装器,解决了用户在MSI与EXE安装包间切换导致的升级异常问题,但现在遇到了新的困境:
- 无法为Install4j生成的MSI指定UpgradeCode,导致更新时无法自动卸载旧的Wix MSI
- 尝试过自定义Install4j安装动作搜索并卸载已有的Wix MSI,但因Install4j MSI运行时
MsiExec仅允许单实例运行,该方案完全不可行 - 临时方案是在构建后步骤修改MSI数据库插入UpgradeCode,但维护成本高,还可能需要重新引入已移除的Wix,并不理想
我们希望找到Install4j未公开的XML标记或特性来指定/控制生成的MSI UpgradeCode,目前尚未发现相关线索。当前使用Install4j v9,若新版本提供可行方案,我们愿意考虑升级。
内容的提问来源于stack exchange,提问作者Jason Hiatt
相关产品推荐
相关产品推荐

