我有一个主Inno安装程序安装程序,我可以在其中选择一种语言。在Run
部分,我启动了一个子安装程序(也是在Inno Setup中创建的)。
启动第二个安装程序时,我想使用主安装程序中选择的语言。
所以我传入参数语言。
现在,在Code
部分,我想获取参数中的语言并进行设置。
MyMainProgram.iss
Filename: "{tmp}\MySubProgram_setup.exe"; StatusMsg: "Installing My Sub Program"; \
Parameters: "/Language ""{language}"""
在MySubProgram.iss
我可以使用以下语言:{code:GetCommandLineParam|/Language}
或language := GetCommandLineParam('Language')
但我不知道如何设置语言 感谢
答案 0 :(得分:2)
假设两个安装程序都使用标准的Inno Setup语言机制/对话框,只需使用/LANG
command-line switch(对于子安装程序)并将其设置为值{language}
constant(在主安装程序中):
[Languages]
Name: "en"; MessagesFile: "compiler:Default.isl"
Name: "de"; MessagesFile: "compiler:Languages\German.isl"
[Run]
Filename: "{tmp}\MySubProgram_setup.exe"; StatusMsg: "Installing My Sub Program"; \
Parameters: "/LANG={language}"
子安装程序不需要任何其他代码。它只需要定义相同的语言:
[Languages]
Name: "en"; MessagesFile: "compiler:Default.isl"
Name: "de"; MessagesFile: "compiler:Languages\German.isl"