安装程序停止服务并给出文件正在使用警告

问题描述 投票:0回答:1

我有一个 WiX 安装程序项目,它安装客户端应用程序和 Windows 服务。它被设置为在安装过程中停止服务。但是它仍然显示错误窗口:

以下应用程序正在使用安装程序必须更新的文件

带有

Try Again
Continue
Cancel
选项。如果我选择
Continue
并检查安装程序的 Windows 事件日志,它会显示服务正在停止并再次启动。 StopServices 元素位于建议的序列位置。

如何避免错误窗口?

我的理解是,文件的列出顺序并不重要,因为 Windows 安装程序会在复制任何文件之前停止服务。我想知道是否需要先列出服务exe。

wix windows-installer
1个回答
0
投票

最佳解决方案:使用“ServiceInstall”和“ServiceControl”元素确保服务正确停止/启动(以及安装/卸载)。

事实上,在我们的安装程序中,应用程序和服务是从自定义安装程序代码中停止/启动的。但是,在运行自定义安装程序代码之前会检查文件是否正在使用。因此,这些文件在安装程序启动时正在使用,但在安装程序尝试复制文件时尚未使用。对用户来说很烦人,但实际上并不是问题。如果在安静模式下使用

msiexec.exe
安装,则安装成功。

此外,在实际关闭之前,我们还遇到了从关闭调用返回的服务的另一个问题。 (正如@PhilDW 所评论的)。

© www.soinside.com 2019 - 2024. All rights reserved.