nsis - 从 Chocolatey 获取 NSIS 安装程序提示

标签 nsis chocolatey

我想使用 Chocolatey 来安装 GeoServer ;由于社区源中没有对应的软件包,我选择根据他们的官方 (NSIS) Windows 安装程序创建自己的软件包。

我目前正在使用 Install-ChocolateyPackage commandlet-SilentArgs 参数隐藏安装程序窗口:

Install-ChocolateyPackage `
   -PackageName $Env:ChocolateyPackageName `
   -Url "http://sourceforge.net/.../geoserver-2.14.0.exe" `
   -FileType "exe" `
   -SilentArgs "/S /D..."

但是,安装程序有几个有趣的提示,例如让您可以自定义 Web 服务器的端口号...

Image: GeoServer's NSIS installer, prompting for a custom port.

有没有办法从命令行提供安装程序的字段,例如安装路径的 /D

最佳答案

NSIS本身仅内置了对/NCRC/S/D=c:\foo\bar的自动支持,除此之外的任何内容都必须由安装作者专门编码。

/S 将安装程序模式设置为静默并跳过所有页面,它只会执行 SectionIfSilent 可用于检测代码中的静默模式。

可以通过使用 FileFunc.nsh 中的 GetOptions 宏解析命令行和/或使用应答文件来将自定义选项支持添加到安装程序中。

应答文件通常只是一个 .ini 文件,其中包含安装程序可以读取的值以更改默认值:ReadIniStr $FooValue "$EXEDIR\mysetupanswer.ini""Options""Foo"

关于nsis - 从 Chocolatey 获取 NSIS 安装程序提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53188991/

相关文章:

electron - 生成 Electron app.exe,它将在安装过程中要求用户输入(使用 Electron 生成器和nsis)?

installation - 使快捷方式在 NSIS 中最小化

dependencies - 用于安装依赖项最新版本的 Nuspec 片段

git-tfs - 为什么我安装 gittfs 时会出现以下错误?

permissions - 是否可以在没有管理权限的情况下写入 NSIS 卸载信息?

windows - 如何为 Electron 应用程序设置 ProgId?

windows - 在 Windows 卸载程序中执行程序

c# - 向巧克力之神嘘

package - 我可以为不是安装程序的 EXE 创建 Chocolatey 包吗?

chocolatey - 如何让 Chocolatey 中的包装参数正常工作?