Секция [CustomMessages] используется для установки пользовательских значений сообщений в константах {cm:...}. Для получения дополнительной информации обратитесь к разделу Константы справки.
Следующий пример показывает использование константы {cm:...} из секции [CustomMessages] для описания задачи:
[CustomMessages] CreateDesktopIcon=Create a &desktop icon [Tasks] Name: desktopicon; Description: "{cm:CreateDesktopIcon}"
Сообщения могут принимать аргументы от %1 до %9. Порядок аргументов можно менять (например, разместить %2 перед %1), а также дублировать, если это необходимо (например, "%1 ... %1 %2"). В сообщениях с аргументами используйте последовательную запись двух символов "%", чтобы встроить один символ "%". Аргумент вида "%n" позволяет создать перенос на новую строку.
В случаях, когда в секции [Languages] имеется несколько записей, использование секции [CustomMessages] с пользовательскими сообщениями (в противоположность языковому файлу .isl) по умолчанию переопределит значения сообщений для всех языков. Чтобы применить записи секции [CustomMessages] только для одного языка, добавьте через точку к имени константы префикс с внутренним именем языка, с которым необходимо ассоциировать данное сообщение. Например:
nl.CreateDesktopIcon=Maak een snelkoppeling op het &bureaublad
В настоящее время все языковые файлы .isl, поставляемые вместе с Inno Setup, имеют следующие пользовательские сообщения, переведенные для каждого языка (показаны значения для английского языка):
NameAndVersion=%1 version %2 AdditionalIcons=Additional icons: CreateDesktopIcon=Create a &desktop icon CreateQuickLaunchIcon=Create a &Quick Launch icon ProgramOnTheWeb=%1 on the Web UninstallProgram=Uninstall %1 LaunchProgram=Launch %1 AssocFileExtension=&Associate %1 with the %2 file extension AssocingFileExtension=Associating %1 with the %2 file extension... AutoStartProgramGroupDescription=Startup: AutoStartProgram=Automatically start %1 AddonHostProgramNotFound=%1 could not be located in the folder you selected.%n%nDo you want to continue anyway?
Эти предопределённые пользовательские сообщения можно использовать в собственных сценариях. Вот, к примеру, использование UninstallProgram:
[Icons] Name: "{group}\{cm:UninstallProgram,My Program}"; Filename: "{uninstallexe}"