如何在 Inno Setup 中用不同语言重写 WelcomePage 的预定义消息?
How can I rewrite predefined messages for the WelcomePage in different languages in Inno Setup?
我有 3 种语言,我需要根据我选择的语言更改 AppName
。
我写了这个:
[Setup]
AppName={code:GetMyAppName}
[Code]
function GetMyAppName(param : String) : String;
begin
case ActiveLanguage of
'en': Result := 'AB Office Client';
'ru': Result := 'Клиент АБ Офис';
'ua': Result := 'Клієнт АБ Офіс';
end;
end;
这里有我的语言相关 [Messages]
部分:
[Messages]
en.WelcomeLabel1=Welcome to [APPNAME] Setup program. This program will install [APPNAME] on your computer.
ru.WelcomeLabel1=Вас приветствует программа установки [APPNAME] Эта программа установит [APPNAME] на Ваш компьютер.
ua.WelcomeLabel1=Вас вітає програма встановлення [APPNAME]. Ця програма встановить [APPNAME] на Ваш комп'ютер.
我的问题是:如何将函数 GetMyAppName
的结果传递给 [APPNAME]
?我可以通过插入一个先前定义的常量(如 {#AppName}
)来做到这一点,但我不能将 [Code]
部分中的函数与预处理器指令一起使用。
同样的问题是当我改用 [CustomeMessages]
时。像这样:
[Setup]
AppName={cm:AppName}
[CustomMessages]
en.AppName=AB Office Client
ru.AppName=Клиент АБ Офис
ua.AppName=Клієнт АБ Офіс
此外,我知道 [Messages]
部分中有一些参数 %1
和 %2
,但我不知道如何使用它们。对我来说 %1
和 %2
参数不会相应地转移到 AppName
和 AppVersion
。他们只是保持 %1
和 %2
。
最后,手动更改 .isl
文件对我来说不是一个选项。
非常感谢您的帮助。祝你有个愉快的一天。
默认值是:
WelcomeLabel1=Welcome to the [name] Setup Wizard
WelcomeLabel2=This will install [name/ver] on your computer.%n%nIt is recommended that you close all other applications before continuing.
因此,请遵循这一点 – 在您的翻译中使用 [name]
和 [name/ver]
占位符。
如果您需要其他定制,请参阅 or 。
我有 3 种语言,我需要根据我选择的语言更改 AppName
。
我写了这个:
[Setup]
AppName={code:GetMyAppName}
[Code]
function GetMyAppName(param : String) : String;
begin
case ActiveLanguage of
'en': Result := 'AB Office Client';
'ru': Result := 'Клиент АБ Офис';
'ua': Result := 'Клієнт АБ Офіс';
end;
end;
这里有我的语言相关 [Messages]
部分:
[Messages]
en.WelcomeLabel1=Welcome to [APPNAME] Setup program. This program will install [APPNAME] on your computer.
ru.WelcomeLabel1=Вас приветствует программа установки [APPNAME] Эта программа установит [APPNAME] на Ваш компьютер.
ua.WelcomeLabel1=Вас вітає програма встановлення [APPNAME]. Ця програма встановить [APPNAME] на Ваш комп'ютер.
我的问题是:如何将函数 GetMyAppName
的结果传递给 [APPNAME]
?我可以通过插入一个先前定义的常量(如 {#AppName}
)来做到这一点,但我不能将 [Code]
部分中的函数与预处理器指令一起使用。
同样的问题是当我改用 [CustomeMessages]
时。像这样:
[Setup]
AppName={cm:AppName}
[CustomMessages]
en.AppName=AB Office Client
ru.AppName=Клиент АБ Офис
ua.AppName=Клієнт АБ Офіс
此外,我知道 [Messages]
部分中有一些参数 %1
和 %2
,但我不知道如何使用它们。对我来说 %1
和 %2
参数不会相应地转移到 AppName
和 AppVersion
。他们只是保持 %1
和 %2
。
最后,手动更改 .isl
文件对我来说不是一个选项。
非常感谢您的帮助。祝你有个愉快的一天。
默认值是:
WelcomeLabel1=Welcome to the [name] Setup Wizard
WelcomeLabel2=This will install [name/ver] on your computer.%n%nIt is recommended that you close all other applications before continuing.
因此,请遵循这一点 – 在您的翻译中使用 [name]
和 [name/ver]
占位符。
如果您需要其他定制,请参阅