Секция [Messages]

Секция [Messages] используется для определения сообщений, которые будут показаны программой установки или удаления. Как правило, создавать секцию [Messages] в главном сценарии не нужно, поскольку все необходимые сообщения извлекаются из файла Default.isl (или другого языкового файла, указанного в секции [Languages]), который входит в поставку Inno Setup.

Однако некоторые сообщения можно переопределить путём создания секции [Messages] в файле сценария. Для этого сначала необходимо узнать ID сообщения, которое требуется изменить. Его можно легко найти в файле Default.isl. Допустим, вы хотите изменить текст кнопки "&Далее >" на текст "&Вперёд >". ID этого сообщения "ButtonNext", таким образом нужно создать секцию [Messages] следующего вида:

[Messages]
ButtonNext=&Forward >

Некоторые сообщения используют аргументы, такие как %1 и %2. Порядок аргументов можно изменять (например, разместить %2 перед %1), а также, в случае необходимости, дублировать (например, "%1 ... %1 %2"). При указании аргументов в сообщениях используйте последовательную запись двух знаков "%", чтобы встроить один "%". Аргумент "%n" создаёт разрыв строки.

Если вы хотите перевести все тексты Inno Setup на другой язык, вместо изменения Default.isl или переопределения каждого сообщения в собственном сценарии, создайте копию файла Default.isl и переименуйте его, например, в MyTranslation.isl. Теперь, чтобы использовать собственный перевод MyTranslation.isl в любом инсталляторе, просто создайте секцию [Languages] с записью, указывающей на этот файл.

В случаях, когда в секции [Languages] определено несколько языков, использование секции [Messages] в собственном сценарии (в противоположность файлу .isl) по умолчанию переопределит сообщения для всех языков. Чтобы применить параметры секции [Messages] только для одного языка, добавьте к ID сообщений приставку в виде внутреннего имени языка с разделительной точкой. Например:

en.ButtonNext=&Forward >

Если сообщения отсутствуют или для какого-то языка не определены, компилятор выдаст соответствующее предупреждение. Эти предупреждения могут быть отключены при помощи директив MissingMessagesWarning и NotRecognizedMessagesWarning.

Сообщения специального назначения

Сообщение BeveledLabel можно использовать для указания особого текста, который будет отображаться с левой стороны в нижней части окна программы установки и удаления. Например:

[Messages]
BeveledLabel=Inno Setup

Сообщение HelpTextNote можно использовать для указания одной или нескольких строк, которые будут добавлены в общий список параметров и отображаться при передаче инсталлятору в командной строке ключа /HELP. Например:

[Messages]
HelpTextNote=/PORTABLE=1%nEnable portable mode.

Все сообщения специального назначения по умолчанию представляют собой пустую строку. При их использовании и многоязычной установке убедитесь, что они содержат значения (не являются пустыми) для всех указанных в сценарии языков.