我使用以下脚本静默安装install4j应用程序:
start "C:\Temp" /WAIT Installer.3-00-00.Windows.exe -q -dir %localdir%
然而,这完全有效但现在我想修改脚本以获得一些选项。对于。例如。默认安装语言选项为英语。用户可以在正常安装时选择要安装的任何语言。使用上面的脚本,语言只有英文。有没有选项,我可以通过命令行为不同语言提供选项?
谢谢, 克瑞提
答案 0 :(得分:1)
批处理没有像其他语言一样的内置选项解析器,所以你必须自己做,例如像这样:
@echo off
setlocal
:continue
if "%1"=="" then goto finished
if /i "%1"=="/l" then (
shift
set "lang=%1"
) else if ... (
...
)
shift
goto continue
:finished
REM option parsing ends here, regular code below
修改:如果我正确理解 install4j 文档,那么必须使用-q -dir "C:\destination\folder"
选项{{3即使您通过-varfile "C:\path\to\your.varfile"
提供unattended install,也是如此。选项-c
将以控制台模式运行安装程序,这与无人参与模式不同。
我尝试在与Installer.3-00-00.Windows.varfile
相同的文件夹中创建响应文件Installer.3-00-00.Windows.exe
,然后像这样运行安装程序:
@echo off
setlocal
set "localdir=C:\destination\folder"
cd /d C:\installer\folder
start "Install" /wait Installer.3-00-00.Windows.exe -q -dir "%localdir%"
BTW,start
命令的第一个参数设置控制台窗口的标题。它不会更改工作目录。如果要为已启动的程序设置工作目录,则必须使用/d "C:\Temp"
:
start "Install" /d "C:\Temp" /wait Installer.3-00-00.Windows.exe -q -dir "%localdir%"
答案 1 :(得分:0)
您可以使用参数
从命令行设置语言-Dinstall4j.language=fr
(在这种情况下是法语)。该语言必须是在常规设置 - >语言步骤中配置的语言之一。
要更改安装程序中的其他设置,请考虑使用response file。所有响应文件变量也可以使用语法-VvariableName=value
在命令行上传递。