【发布时间】:2019-03-04 17:42:45
【问题描述】:
我正在尝试通过带有文件参数的 Windows 批处理脚本进行静默安装,但我无法做到。 我有一个文件(params.txt),其中包含在安装过程中应输入的参数(例如路径、选项等)。
Obs.:也可能是 PowerShell。
我在 Linux 中有类似的东西,很简单:
.../installer.sh < .../params.txt
但我正在尝试许多不同的方式,包括 NSIS、MSI。但他们都没有看到用这些参数解决我的问题。 我得到的最接近的是
C:\installer.exe /S
确实使用默认参数进行安装,但我想通过我的文件指定它们。
我已经进行了很多研究,甚至在 stackoverflow 中,但没有解决我的问题。
我的 params.txt 文件内容:
yes
no
C:\Software\MySoftware
yes
no
no
no
安装提示几个问题,文件包含我在安装过程中需要给出的答案。
此外,安装程序是使用 NSIS(Nullsoft Scriptable Install System)生成的。
提前谢谢你。
【问题讨论】:
-
为什么需要批处理文件?您是否正在执行多个安装程序?您是否在执行不是您编写的安装程序?
-
这不是批处理问题。您可以通过执行“Installer.exe /?”获得要在命令行上传递的参数列表。如果这没有帮助,您将需要与 Installer.exe 的作者核实,以了解该信息,因为这取决于您的安装程序为参数提供的内容。然后您可能需要执行类似 Installer.exe /S /v"/qb INSTALLDIR=Drive:\DesiredFolder SOMEOTHERPARM=Something NEXTPARM=SomethingElse 等"的操作。您很可能会在命令行而不是文件中传递这些参数
-
答案会因安装程序的种类而异。这是 MSI、InstallScript 还是其他?
-
@Anders 该脚本将每天自动执行。创建这个的想法是使安装,带有参数,自动和无头。
-
@RGuggisberg 有没有办法使用这个传递参数但没有它们的名称?因为实际上,安装程序只会弹出问题,我想用它作为答案。我在帖子中添加了有关 txt 文件的更多详细信息。
标签: powershell batch-file parameter-passing nsis silent-installer