我希望语言文件中具有所有“ CustomMessages”(扩展名“ isl”)。此外,某些消息还包含预处理程序常量,例如
ALREADY_INSTALLED={#MyAppName} is already installed on this computer.
该消息应显示如下:
“此计算机上已经安装了My-really-nice-App”
但是我得到的是:
“ {#MyAppName}已安装在此计算机上。”
当我拥有代码,在同一个iss文件中的[CustomMessages]
主题和#define MyAppName
中定义的消息时,以下内容就像一个超级魅力:
MsgBox(ExpandConstant('{cm:ALREADY_INSTALLED}'), ...);
有任何线索吗?
答案 0 :(得分:1)
仅{
[id]: [...types]
}
个文件经过了预处理,而.iss
个文件未进行预处理。
但是您可以使用FmtMessage
function:
.isl
使用
FmtMessage(CustomMessage('ALREADY_INSTALLED'), ['{#MyAppName}'])
请注意,在Pascal脚本代码中,最好使用CustomMessage('FOO')
,而不是ALREADY_INSTALLED=%1 is already installed on this computer.
。
类似的问题:Pass parameters to custom messages defined in .isl files。