InstallShield 2016 未安装服务

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

我正在尝试在 InstallShield 2016 中配置和安装服务。我使用组件向导添加了该服务。当我运行安装程序时,窗口安装程序弹出窗口出现在我的屏幕上,其中包含可以传递给服务的不同选项。如何将这些选项传递给服务? 我尝试过使用组件向导而不使用组件向导来创建服务。在这两种情况下,结果与上述相同。我一直在寻找有关如何操作的解释,但没有成功。

设置和弹出窗口截图:

visual-studio-2013 windows-installer installshield-2016
3个回答
1
投票

当 msiexec 命令行不正确时,会显示该错误对话框。目前尚不清楚您在做什么,但您没有对服务或任何 exe 文件运行 msiexec 命令。您构建一个 MSI 文件然后安装它,该 MSI 文件将安装该服务。即使您在构建的 MSI 文件上运行 msiexec 命令行,它也是不正确的。


0
投票

记录如下:

检查该文件是否被标记为“密钥文件”。这是我的错。


-1
投票

终于我能够让它发挥作用了。我是 Installshield 的新手。这是我第一次使用它。

  1. Michael Urman 的评论非常有帮助。
  2. 我已经阅读了有关如何使用 msiexec.exe 启动 msi 的文档,但我仍然很困惑。根据文档,延迟操作必须在InstallInitialize和InstallFinalize之间,并且返回处理应该是同步的(等待退出代码)。然而,系统抱怨正在进行另一个安装,因此不会安装该服务。

  3. 为了解决这个问题,我将工作目录设置为 [service] (包含我的 msi 和 exe 文件的文件夹),将命令行设置为 msiexec.exe /i "[SERVICE]UserAgent.msi" / qn,我将返回处理设置为异步(不等待完成),将执行序列安装到计划重新启动后,并添加一个条件来检查是否未安装。

  4. 通过这些选项,我能够静默安装该服务。但卸载应用程序时不会卸载。必须手动卸载

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