首页 > 解决方案 > 在系统帐户下运行时 MSI 未升级

问题描述

我正在使用 PsExec 使用以下命令在远程计算机上运行 MSI:

psexec -accepteula \\$(remote-machine-fqdn) -s cmd /c "msiexec.exe /qn /I $(path-to-msi) /Lv $(path-to-log-file)"

这第一次工作正常,安装应用程序。

但是,后续运行(这是作为 TFS 中 CI 构建的一部分运行的)会导致应用程序的多个版本出现在“添加和删除程序”中。如果我自己运行安装程序(登录到服务器,单击 MSI 等),那么它会正确升级,因此问题似乎不在安装程序本身。

我认为问题在于以系统帐户运行(PsExec 命令中的 -s 开关),但我看不出为什么会发生这种情况。有人见过这个吗?

标签: continuous-integrationcontinuous-deploymentpsexecwindows-installer

解决方案


尝试在全新和升级安装时将 ALLUSERS=1 公共属性传递给 msi。


推荐阅读