Windows服务调用msiexec不会更新服务 上下文:

问题描述

上下文:

我们正在开发以本地系统帐户身份运行的Windows服务。其功能之一是检测新版本并通过启动msiexec.exe /i file.msi /qn进行自我更新。

我们希望该服务将被更新并使用新版本重新启动。但是,我们观察到的是安装完成后显示“ MainEngineThread返回1603”。

我们已经阅读了https://docs.microsoft.com/en-us/troubleshoot/windows-server/application-management/msi-installation-error-1603,并在分析了可能的原因之后得出结论:

  • Windows Installer尝试安装PC上已安装的应用程序。 但是,它是新版本。因此,应该没有问题。
  • 您要安装Windows Installer软件包的文件夹已加密。
  • 不能访问包含要安装Windows Installer软件包的文件夹的驱动器作为替代驱动器。
  • 您尝试将Windows Installer软件包安装到的文件夹上的
  • SYstem帐户 HAS 具有完全控制权限。您会注意到错误消息,因为Windows Installer服务使用SYstem帐户来安装软件。

问题:

  1. 通过从服务或子进程中调用msiexec.exe自动更新Windows服务的当前解决方案?我们缺少什么?
  2. 如果当前的解决方案不可行,那么Windows服务执行自我更新的解决方案是什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)