Inno设置脚本:如何控制语言部分



我想控制哪些语言可用于安装。我已将myLanguage定义为:

; default is EN(glish) unless CMD parameter defined with /DmyLanguage="JA"
#ifndef myLanguage
#define myLanguage "EN"
#endif

我在语言部分有这个:

[Languages]
Name: JA; MessagesFile: compiler:LanguagesJapanese.isl; LicenseFile: {#MyFolder}eulajp.txt; 
Name: EN; MessagesFile: compiler:Default.isl; LicenseFile: {#MyFolder}eula.txt

我可以用Languages: JA控制的其他部分,比如:

Source: {#MyFolder}manual_jp.chm; DestDir: {app}; DestName: manual.chm; Languages: JA

但此选项在"语言"部分不可用。

只有当myLanguage="JA"时,我才能提供JA语言选择;JA";?

我们可以在[Languages]部分中使用#if:

#if myLanguage == "JA" 
Name: JA; MessagesFile: compiler:LanguagesJapanese.isl; LicenseFile: {#MyFolder}eulajp.txt; 
#endif

这也意味着您需要将所有将在选定语言下运行的行包装为相同的条件:

#if myLanguage == "JA" 
Source: {#MyFolder}manual_jp.chm; DestDir: {app}; DestName: manual.chm; Languages: JA
#endif

否则我们会得到编译器错误:

指令或参数";语言;表达式错误:参数"语言;包括未知语言。

最新更新