我的 WiX XML 文件安装了包含名为 OLOLO_SERVICE 的 Windows 服务的应用程序(例如)。我想在安装/重新安装我的应用程序时停止此服务。
我使用带有 ExeCommand='sc stop OLOLO_SERVICE' 的 CustomAction。
<CustomAction Id='EnsureThatServiceIsStopped' Directory='INSTALLLOCATION'
Impersonate="no" Execute="immediate" ExeCommand="sc
stop OLOLO_SERVICE" Return="ignore" />
<InstallExecuteSequence> 标签里面是动作
<Custom Action='EnsureThatServiceIsStopped' Before='InstallValidate' />
但这不起作用,卸载程序显示此窗口“要继续卸载,您应该停止关注可执行文件”(可能不是 100% 正确,因为在我的俄语 Windows 7 中它是用俄语编写的)。
我认为可能的原因是
- 脚本在获得管理员权限之前运行(并且停止服务失败,因为它需要管理员权限)
- 脚本在验证后运行(检查已安装的可执行文件时验证失败)
请帮帮我,我想使用批处理“sc stop OLOLO_SERVICE”停止服务
PS。我决定简化一个问题:我希望我的 WiX 在检查正在运行的应用程序之前以管理员权限执行“sc stop OLOLO_SERVICE”