Inno Setup 6
История версий
Авторские права © 1997-2026 Jordan Russell. Все права
защищены.
Смежные авторские права © 2000-2026 Martijn Laan. Все права защищены.
Условия распространения и использования смотрите в LICENSE.TXT.
Хотите получать уведомления об обновлениях? Подпишитесь на рассылку о новых выпусках Inno Setup.
6.7.0 (2026-01-06)
Используете Inno Setup в коммерческих целях? Пожалуйста, купите лицензию.
Спасибо всем, кто уже приобрел лицензию! Ваша поддержка очень важна для
нашего дальнейшего развития.
Настройка фона мастера (цвет и изображения)
Теперь в настройках можно указать собственный цвет фона и, по желанию, также фоновое изображение. Поддерживается смешивание цвета и изображения, а также, по желанию, использование отдельного цвета фона и изображения, если активна тёмная тема.
Настройка цвета фона также поддерживается программой удаления.
Эти изменения имеют обратную совместимость: если вы не будете использовать ни одну из новых директив, то ваши инсталляторы и деинсталляторы будут выглядеть также, как и раньше.
- Для директивы WizardStyle добавлен новый модификатор excludelightcontrols. Выполняет отключение настраиваемого стиля для всех элементов управления (включая кнопки), когда активна светлая тема, за исключением случаев, когда стиль необходим для достижения прозрачности.
- Для директивы WizardStyle добавлен новый модификатор hidebevels. Позволяет скрыть все разделители (горизонтальные линии) в мастере инсталлятора и деинсталлятора, за исключением системных диалогов.
- В секции [Setup] добавлены новые директивы WizardBackColor и WizardBackColorDynamicDark для указания пользовательских цветов фона на всех страницах мастера установки и удаления, включая встроенные диалоги, такие как "Выбор языка" и другие.
Если вы установите эту директиву, но не укажите пользовательский стиль, автоматически будет активирован стиль windows11 с модификатором excludelightcontrols.
- В секции [Setup] добавлены новые директивы WizardBackImageFile и WizardBackImageFileDynamicDark для указания пользовательских изображений фона на всех страницах мастера установки, но не удаления.
Поддерживается указание нескольких файлов для получения высококачественных результатов при любых настройках DPI.
Если вы установите эту директиву, но не укажите пользовательский стиль, автоматически будет активирован стиль windows11 с модификаторами excludelightcontrols и hidebevels.
Обратите внимание, что в светлой теме стиль windows11 использует не совсем белый цвет. Чтобы изменить его на чистый белый, укажите для директивы WizardBackColor значение white.
Скриншот инсталлятора с фоновым изображением в тёмной теме при DPI 150%.
Скриншот инсталлятора с фоновым изображением в светлой теме при DPI 150%.
Скриншот диалога задач с фоновым цветом при DPI 125%.
- В секции [Setup] для директив WizardImageFile и WizardSmallImageFile теперь можно указать пустые значения, если вы хотите, чтобы фоновое изображение (или цвет) оставалось самостоятельным. Это не изменит макет мастера.
В качестве альтернативы укажите директиву WizardImageOpacity, чтобы смешать изображения мастера с изображением фона (или цвета). Можно также использовать встроенные изображения мастера.
- В секции [Setup] добавлена новая директива WizardBackImageOpacity для указания непрозрачности фонового изображения.
Это даёт возможность использовать обычное и DynamicDark фоновое изображение.
- Примеры:
; Использование раздельных изображений фона для светлой и тёмной темы
WizardBackImageFile=MyBackImage.png
WizardBackImageFileDynamicDark=MyBackImage_Dark.png
; Скрываем большое и малое изображения мастера
WizardImageFile=
WizardSmallImageFile=
; Использование одного изображения фона для светлой и тёмной темы
WizardBackImageFile=MyBackImage.png
WizardBackImageFileDynamicDark=MyBackImage.png
; Применяем прозрачность к изображению фона, чтобы оно
; хорошо смотрелось как в светлой, так и в тёмной теме
WizardBackImageOpacity=150
; Оставляем большое и малое изображения мастера, применив прозрачность,
; чтобы они равномерно сливались с изображением фона
WizardImageOpacity=150
; Использование фонового изображения в мастере установки,
; а также фонового цвета в других окнах и деинсталляторе
WizardBackImageFile=MyBackImage.png
WizardBackImageFileDynamicDark=MyBackImage.png
WizardBackColor=#ffc0cb
WizardBackColorDynamicDark=#570c22
; На страницах мастера смешиваем изображение фона и цвет
WizardBackImageOpacity=150
- Программирование на языке Паскаль: добавлена функция WizardSetBackImage для установки, обновления или удаления фонового изображения во время выполнения. Может быть использована как для инсталлятора, так для деинсталлятора.
Смотрите пример в справке, а также в сценарии CodeClasses.iss при вызове функции BackImageButtonOnClick.
Улучшения IDE компилятора
Функция автозавершения теперь быстрее работает для директив в секции [Setup], а вкладки #include стали более удобными в управлении даже в крупных проектах.
- Добавлена поддержка автозавершения в секции [Setup] для значений директив с фиксированными значениями, таких как yes/no и другими, например для директивы WizardStyle.
- IDE компилятора теперь обеспечивает открытие до 50 файлов #include вместо 20.
- Добавлен новый параметр "Не открывать новые файлы #include", отключенный по умолчанию.
При включении этой функции вновь обнаруженные при компиляции файлы #include будут закрыты, пока вы явно не откроете их вкладки, например, через меню "View".
- В меню "Правка" добавлен пункт "Перейти в файл" для перехода в файл (горячие клавиши Ctrl+F12 или Ctrl+P).
- При открытии файла, который является файлом #include для текущего главного файла сценария, с помощью пункта "Открыть" в главном меню "File", IDE предложит перейти на его вкладку вместо открытия его в качестве нового главного файла сценария.
- Комбинация Ctrl+W теперь закрывает текущую вкладку (в дополнение к Ctrl+F4), что согласуется с другими современными редакторами. Ранее Ctrl+W была назначена на команду "Отладка Uninstall" в меню "Отладка". Теперь для этого используется комбинация Alt+Q.
Улучшения в области безопасности
Рекомендуется выполнить обновление, даже если вы пока не планируете использовать новые функции и другие возможности. Мы постоянно работаем над повышением безопасности и надёжностью ваших программ установок. В этой версии:
Программа установки и деинсталляции теперь по умолчанию самостоятельно пытаются включить для своих процессов защитную функцию Windows — RedirectionGuard. Данная функция, доступная в Windows 11 и Windows 10 начиная с версии 22H2, блокирует обход NTFS-соединений и символических ссылок, созданных непривилегированными пользователями (или любыми процессами без повышенных прав), обеспечивая защиту от атак, связанных с перенаправлением путей, которые могут привести к повышению привилегий.
Для получения дополнительной информации обратитесь к справке с описанием новой директивы RedirectionGuard в секции [Setup]. Также поддерживаются новые параметры командной строки /NOREDIRECTIONGUARD и /REDIRECTIONGUARD, которые имеют приоритет над настройкой директивы RedirectionGuard.
Другие изменения
- Добавлены механизмы повторных попыток сборки программы установки, чтобы сделать процесс компиляции более устойчивым к временным проблемам доступа к файлам, например, когда антивирусное программное обеспечение или другие процессы временно блокируют выходные файлы.
- Исправлено: в Windows Server при попытке программы установки перезагрузить компьютер могло отображаться сообщение об ошибке "Невозможно перезагрузить компьютер". Это было связано с тем, что перезагрузка инициировалась из процесса без повышенных прав, что по умолчанию не допускается системой Windows Server. Теперь перезагрузка инициируется из процесса с повышенными правами, что решает проблему, при условии что установщик запрашивает повышение прав. Если для параметра PrivilegesRequired установлено значение lowest вместо admin, то ни один из процессов установки не будет повышен (если только установщик не был запущен с помощью команды "Запуск от имени администратора"), и сообщение об ошибке может по-прежнему отображаться.
- В секции [Setup] такие директивы как WizardImageBackColor и WizardBackColor теперь также принимают название цвета, например, white и black, в дополнение к текущим значениям clWhite, clBlack, #ffffff и #000000.
- Исправлено: элементы управления файлами и каталогами в программе установки должны всегда использовать порядок чтения слева направо, даже если активен язык с направлением письма справа налево, но с версии 6.5.2 это не так.
- Программирование на языке Паскаль:
- В секции [Setup] такие директивы как UsePreviousAppDir, UsePreviousGroup, UsePreviousSetupType, UsePreviousTasks и UsePreviousUserInfo теперь могут принимать логическое выражение, которое может содержать вызовы проверочных функций. Например: UsePreviousAppDir=not PortableCheck.
- Добавлены функции PathCombine, PathEndsWith, PathHasInvalidCharacters, PathIsRooted, PathNormalizeSlashes, PathSame и PathStartsWith, которые позволяют упростить обработку путей.
- Добавлен класс TNewPathEdit, потомок TNewEdit, который теперь всегда использует порядок чтения слева направо и обеспечивает автозаполнение.
Для управления файлами и каталогами вы должны использовать TNewPathEdit вместо TNewEdit, но вместо прямого применения класса рекомендуется использовать TInputFileWizardPage и TInputDirWizardPage.
- Добавлена функция RPos.
- Препроцессор Inno Setup:
- Добавлена функция Is64BitPEImage.
- Исправлено: функция SameStr теперь чувствительна к регистру символов.
- Исправлено: функция RPos теперь правильно возвращает 0 для пустых подстрок.
- Использование функции ExtractFileDir больше не вызывает появление предупреждения о RemoveBackslash.
- Из параметров директивы DisablePrecompiledFileVerifications в секции [Setup] были удалены суффиксы dll/e32/exe. Параметры setupldre32 и setuplde64 были объединены в один setupldr.
- Экспериментально: добавлена поддержка 64-разрядной версии загрузчика для программы установки путём указания для директивы UseSetupLdr в секции [Setup] значения x64.
Использование x64 не означает, что сама программу установки также будет 64-разрядной: в настоящее время программа установки всегда собирается как 32-разрядный двоичный файл x86.
Использование x64 в любом случае имеет несколько преимуществ: ваш установщик изначально представляет себя как нативный 64-разрядный исполняемый файл, а 64-разрядный загрузчик имеет включенную ASLR с высокой энтропией. Кроме того, это может помочь удовлетворить требования политики безопасности или сторонних разработчиков, которые требуют 64-разрядные установщики, даже если основная программа установки по-прежнему является 32-разрядной.
Недостатком является то, что ваш установщик больше не будет загружаться на системах под управлением Windows x86.
- Если Inno Setup ещё не установлен, программа установки снова предложит вам выбрать режим установки (для всех пользователей или только для текущего пользователя) с помощью диалогового окна, которое можно скрыть. Начиная с версии 6.1.1 этот выбор был доступен только через параметры командной строки /ALLUSERS и /CURRENTUSER.
- Другие улучшения и исправления.
История
версий Inno Setup 6.6