我正试图用以下参数修复已安装的msi安装程序:
msiexec /f "msipath"
它正在正常修复。但在修复时,我也需要更改它的安装路径。我试过这个论点msiexec /f "msipath" INSTALLDIR="path"
但这是行不通的。
是否可以在修复msi时更改其安装路径?。如果可能的话,请分享确切的论点。
这是不可能的。对于要移动的组件,必须先将其卸载,然后再重新安装。(修复只是替换原始位置的资源。(请考虑MsiSetTargetPath:上的这条注释
如果已经为当前用户或其他用户安装了使用这些路径的组件,请不要尝试配置目标路径。在调用MsiSetTargetPath之前,请检查ProductState属性,以确定是否安装了包含此组件的产品。
因此,您通常必须卸下并重新安装整个软件包。根据您的其他需求,进行重大升级可能是实现这一目标的好方法。