我正在尝试在InstallShield 2016中配置和安装服务。我使用组件向导添加了服务。当我运行安装程序时,我的屏幕上出现了Window Installer弹出窗口,其中包含可以传递给服务的不同选项。如何将这些选项传递给服务? 我尝试使用组件向导并且没有组件向导来创建服务。在这两种情况下,它都与上述结果相同。我一直没有找到解释如何做到这一点。
设置和弹出窗口的屏幕截图:
答案 0 :(得分:1)
当msiexec命令行不正确时,会显示该错误对话框。目前还不清楚你在做什么,但是你没有在服务或任何exe文件上运行msiexec命令。您构建一个MSI文件然后安装它,该MSI文件将安装该服务。即使您在构建的MSI文件上运行msiexec命令行,也不正确。
答案 1 :(得分:-1)
最后我能够让它发挥作用。我是Installshield的新手。这是我第一次使用它。
我已经阅读了有关如何使用msiexec.exe启动msi的文档,我仍然感到困惑。根据文档,延迟操作必须介于InstallInitialize和InstallFinalize之间,并且返回处理应该是同步的(等待退出代码)。但是,系统抱怨正在进行另一个安装,因此它不会安装该服务。
为了解决这个问题,我将工作目录设置为[service](包含我的msi和exe文件的文件夹),我将命令行设置为msiexec.exe / i“[SERVICE] UserAgent .msi“/ qn,我将返回处理设置为异步(无需等待完成),安装Exec Sequence到计划重启后,并添加条件以检查是否未安装。
通过这些选项,我能够以静默方式安装该服务。但是,卸载应用程序时不会卸载。必须手动卸载