【问题标题】:Create silent-capable installer via Installshield 2010通过 Installshield 2010 创建支持静默的安装程序
【发布时间】:2026-02-22 14:25:01
【问题描述】:

我有一个很大的 Installshield 2010 Basic MSI 项目,它创建了一个可执行的安装程序。

我想让这个安装程序静默运行,但假设的内置 /S/SMS 选项似乎不起作用。我想我必须在 .ISM 本身内明确处理它,但不知道如何处理,到目前为止,我的谷歌搜索只返回了有关 InstallShield 脚本的SilentReadData()SilentWriteData 之类的帮助。 (请参阅http://kb.flexerasoftware.com/doc/Helpnet/installshield15langref/LangrefSilentReadData.htm)我认为这不是正确的方法,因为我的 .ISM 文件中目前没有脚本。

  1. 您还需要了解哪些其他信息来帮助我?
  2. 谁能指出我正确的方向?

在 Windows 7 上运行,为针对 X86 的 32 位可执行文件创建安装程序。

【问题讨论】:

    标签: installshield silent-installer


    【解决方案1】:

    如果您使用的是 InstallScript UI(常见于 InstallScript 和 InstallScript MSI 项目类型),则任何自定义对话框都需要像您发现的那样具有 SilentReadDataSilentWriteData 调用(以 MODE 为条件)。但是,如果您根本没有脚本,那么您可能正在使用 Basic MSI 项目。对于这些,您需要一个不同的命令行参数来使其静音,例如/v"/qb"/v"/qn";您可能还需要为任何非默认设置提供一些属性定义,格式为/v"/qb PROPERTY=\"Value\""

    【讨论】:

    • 我尝试了/v" /qb"/v" /qn" 均无济于事。两种语法都启动了 GUI。请注意,我的 InstallShield 模块没有任何自定义对话框(据我所知),也没有您必须选择选项的地方。只有默认的“嗨,欢迎安装产品 xyz”和“单击下一步继续”。我认为因为没有什么可以选择,-r 不会记录答案文件。我是否需要做一些特别的事情才能让静默选项起作用,还是应该在默认项目中开箱即用?
    • 由于它是一个 InstallShield Basic MSI,我不得不使用 /v" /qn" 作为命令行参数,正如上面 Michael Urman 所述。我之前尝试过,但没有以管理员身份运行。这让一切变得不同。您可以使用/l* file.txt 记录安装的输出。当我这样做时,它显示缺乏完成安装的权限。最终的功能语法(具有管理员权限)是setup.exe /s /v" /qn /l* log.txt"。第一个/s 抑制了“准备安装”对话框。其余的被发送到MSIExec 并控制其运行方式。
    最近更新 更多