Поддержка всех версий Windows используемых сегодня: Windows 10, Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Vista, Windows Server 2008, Windows XP, Windows Server 2003 и Windows 2000 (независимо от пакета обновлений);
Обширная поддержка инсталляций 64-битных приложений на 64-битных выпусках Windows. Также поддерживает x64 разрядные процессоры. (При использовании процессоров Itanium необходимо установить Service Pack);
Поддержка создания одного файла EXE, что облегчает установку вашей программы через сеть. Также поддерживается разбивка на диски;
Стандартный стиль интерфейса мастера Windows 2000/XP;
Включает интегрированную поддержку сжатия файлов (bzip2 и 7-Zip LZMA/LZMA2). Инсталлятор может сравнивать версии файлов, заменять загруженные в память файлы, ведет подсчет общедоступных файлов, регистрирует DLL/OCX и библиотеки типов, устанавливает шрифты;
Создание ярлыков, включая меню Пуск и на Рабочем столе;
Работа с системным реестром и файлами *.ini;
Имеет встроенную поддержку скриптов на Паскале;
Поддерживает создание инсталляторов на различных языках;
Поддержкивает пароли и шифрование инсталляторов;
Поддерживается тихая установка и тихая деинсталляция, с помощью ключей командной строки;
Доступен полный исходный код (Borland Delphi 2.0-5.0 и 2009).
Основной бесплатный конкурент - NSIS (Nullsoft Scriptable Install System).
Последняя стабильная версия - 5.6.1 [14.06.2018]. Официальный сайт. История версий. Все сборки.
Существует 2 вида инсталлятора и 2 вида версий - ANSI-версия для чисто английского алфавита и Unicode-версия для мультиязыковой поддержки, включая русский, а так же, "Обычная компактная версия" и "QuickStart Pack" с возможностью установки полного расширенного комплекта.
Stable Release - включает в себя только программу Inno Setup.
Отдельно Inno Script Studio от Kymoto Solutions (устанавливается в версии QuickStart Pack)
Inno Script Studio является новым, интуитивно понятным, графическим интерфейсом для создания и компиляции скриптов Inno Setup. Скачать:Inno Script Studio v2.3.0 [30.04.2018] Дополнительно: Русификация Inno Script Studio: russian_lang_pack.zip (Russian.lng - скопировать в папку "Inno Script Studio\Languages") Русская справка по Inno Setup 5.6.1: ISetup.chm.zip (ISetup.chm - копировать с заменой в корень "Inno Setup 5")
О русской справке:
Авторы перевода: BagIra, bugron, Leserg.
Данный chm файл является переводом оригинальной справки по Inno Setup. Перевод практически полный.
Встроенные функции расширенной версии Inno Setup,
Подборку полезных примеров из топика по Inno Setup (автор: fty),
Скачайте инсталлятор Inno Setup юникодовый (для поддержки мультиязычности, в том числе русского языка).
Желательно сразу QuickStart Pack unicode - это онлайн установщик, он, кроме самого "Inno Setup", заодно скачает и установит "Inno Script Studio" + модуль шифрования ISCrypt.dll.
Теперь, у вас будет установлена не только "Inno Setup", а рядом будет установлена "Inno Script Studio" - собственно через которую и будет происходить редактирование скриптов и их компиляция. Но, на оффсайте ещё лежит файл русификации...
Скачайте Русификацию для Inno Script Studio и извлеките из архива файл Russian.lng в папку "Inno Script Studio\Languages".
Запустите программу, зайдите в меню "View -> Languages" и выберите "Русский (Россия)".
Скачайте и распакуйте с заменой Русскую справкуISetup.chm в корень установленной папки программы "Inno Setup 5".
В справке подробно по-русски расписаны все секции и возможные команды, а так же собраны по форумам многие решения и ответы на вопросы.
Кроме того, когда вы в скрипте выделяете ключевое слово или команду, выбираете в меню "Помощь -> Document.png Документация Inno Setup", тогда автоматически производится поиск по справке и выводится результат.
Теперь, когда щёлкаете по файлу скрипта *.iss исходника, он автоматически будет открываться в "Inno Script Studio".
Наверху нажимаете кнопочку Выполнить.png (Выполнить) - происходит тестовая компиляция и проверка работы скомпилированной программы.
Забираете готовый экзешник в папке Output или оттуда, как указан путь в скрипте.
Если вы захотите скомпилировать какой-нибудь из старых проектов, то последние версии, от 5.5.3 и выше, чаще всего не смогут ничего скомпилировать, просто будут вылетать ошибки. Дело в том, что довольно долгое время разработка не развивалась и остановилась на стабильной версии 5.5.1. За это время было написано под неё много плагинов, было выпущено много всевозможных разработок, особенно нашими китайскими собратьями.
Поэтому, если вы хотите иметь возможность компилировать скрипты, сделанные в "Расширенной версии" от китайских разработчкивов, тогда вам необходимо установить версию Inno Setup 5.5.2. Рекомендуется к применению из-за огромного количества компонентов, функций и процедур, удобного интерфейса, наличия отладчика и Form Designer-а. Собран на основе исходников Inno Setup 5.5.2.
Инструкция по установке "Расширенной версии Inno Setup" от команды Restools
Скачайте и установите isetup-5.5.1.exe (зеркало) или isetup-5.5.1-unicode.exe (зеркало) 5.5.1 - номер официальной версии Inno Setup только на которую можно установить Расширенную версию от китайцев. Примечание: Если у вас установлена последняя официальная версия Inno Setup 5.6.1 и вы не хотите, чтобы она затёрлась, тогда, во время установки этой старой версии, измените название папки установки с "Inno Setup 5" на "Inno Setup 5.5.1".
У вас будет установлена не только "Inno Setup 5.5.1", но и "Inno Script Studio 2.3.0" - собственно через которую намного удобнее производить редактирование скриптов и их компиляцию. На оффсайте для "Inno Script Studio" лежит файл русификации...
Скачайте Русификацию для Inno Script Studio и извлеките из архива файл Russian.lng в папку "Inno Script Studio\Languages".
Запустите программу, зайдите в меню "View -> Languages" и выберите "Русский (Россия)".
Скачайте и распакуйте с заменой Русскую справкуISetup.chm в корень установленной папки программы "Inno Setup 5.5.1".
Скачайте и распакуйте Inno Setup Compiler Extended build 121216: InnoCompiler121216.7z | Скачать с оффсайта
Применимо к версиям 5.5.0 - 5.5.2, расширение build 121216. Многоязыковая поддержка: английский, китайский, русский.
Из одноимённой папки, в соответствии с установленной версией (ANSI или Unicode), скопируйте Compil32Ex.exe, Templates.dat и папку ISLanguages в каталог Inno Setup 5 (по умолчанию: C:\Program Files (x86)\Inno Setup 5).
Примечание: если у вас Unicode версия, то дополнительно примените твик реестра (файл CourierNew.reg) из папки UnicodeFontLink и перезагрузите компьютер. Твик добавляет к шрифту CourierNew поддержку восточно-азиатских символов.
Из папки, в соответствии с установленной версией (InnoSetup_ANSI или InnoSetup_Unicode), из подпапки FullVCL скопируйте все файлы в каталог Inno Setup (по умолчанию: C:\Program Files\Inno Setup 5.5.1\).
Теперь вы можете компилировать программы через "Inno Script Studio". Запустите программу, откройте в меню "Сервис -> Настройки", пройдите к вкладке "Настройки компилятора" и выставьте путь к папке "C:\Program Files (x86)\Inno Setup 5.5.1".
Если "Inno Script Studio" всё равно выкидывает ошибки при компиляции старых программ, тогда попробуйте компилировать программы напрямую через "Inno Setup 5.5.1". Для этого, зайдите в эту папку и запустите файл Compil32Ex.exe, откройте меню "Инструменты -> Настройки..." и нажмите кнопку "Связать файлы *.iss с этим компилятором", а компилятор "Inno Script Studio" свяжите с последней версией "Inno Setup 5" (v5.6.1) по инструкции из предыдущего пункта. Теперь, при щелчке по файлам *.iss, они будут открываться сразу в этом компиляторе.
ISSkin это дополнение для компилятора от Jordan Russell's Inno Setup, который обеспечивает расширенную поддержку скинов для Inno Setup. Это бесплатная версия от Codejock, которая позволяет добавлять настраиваемые скины для Inno Setup. Inno Setup является свободным компилятором для создания настраиваемых, профессионально выглядящих инсталляторов. ISSkin дает вам гибкость создания пользовательских визуальных стилей, которые могут использоваться с Inno Setup для добавления богатого профессионального вида для любой установки Inno Setup и причём совершенно бесплатно!
Особенности:
Поддержка существующих визуальных стилей Microsoft.
Простой в использовании, с помощью нескольких строк кода.
Скины, поддержка существующих установок.
Требования:
Inno Setup - для компиляции инсталлятора.
Microsoft Windows.
Достижение полностью тематического приложения может быть выполнено лишь в несколько строк кода. Основа скина обеспечивает максимальную совместимость с существующими Windows XP и выше, визуальных стилей и может использоваться на любой платформе Windows. Прилагается коллекция визуальных стилей, как например, Office 2007, Windows XP Royale Blue, Windows XP Luna стили от разработчика и много-много прочих от третьих лиц.
Использование:
Скачайте архив, содержащий готовый пример кода в ISS и коллекцию из 700 всевозможных стилей *.cjstyles: ISSkin Example.7z
Просто запустите ISSkin_Styles.iss и скомпилируйте инсталлятор.
Просто поменяйте название скина на любое из имеющихся в строке #define Skin "Skin Name" между кавычками.
Вам остаётся вставить туда свой код инсталлятора и инсталлятор с вашим оформлением готов!
Вы можете сами редактировать свои стили с помощью редактора скинов, скачайте и установите редактор с оффсайта isskin.codejock.com.
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Последний раз редактировалось ErikPshat; 18.11.2021 в 17:24.
Такс, засыпаю на ходу. Если вам будет не влом, посмотрите пожалуйста что здесь не так (архив во вложении)...
Инструкция у вас уже есть - как компилировать, я же не просто так почву подготавливал
Там в папке Include лежат ресурсы к программе.
А в папке Archives я кинул для распаковки 6-томный архив "Test.7z.00x".
Вообщем, пока я сплю, может быть вы проверите работу всех кнопочек?
А главное, может найдёте решение, почему у меня архивы по 1-ой кнопкой не распаковываются?
P.S. Это как бы я готовлю шаблон для релиза игр в разделе "Прямое скачивание" для юзеров форума
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Последний раз редактировалось ErikPshat; 28.07.2018 в 08:16.
Вот в этом маленьком уроке с примером вы уже знаете достаточно много, в частности:
Как создавать окна программы.
Как выводить картинку BMP в окно.
Как расставить кнопочки.
Научились запускать из кнопочки батник или экзешник.
Найчились запускать текстовик локально.
Научились запускать локально HTML-страницу (HTM).
Найчились, как создавать такие HTML-страницы с картинками, с жирным заголовком и цветным шрифтом.
Научились кнопкой открывать сайты в интернете.
Даже научились открывать папку на компьютере.
Вот видите. На таком маленьком уроке, даже начинающий уже многому может научиться . А коду там всего ничего.
Чтобы поменять код под другую игру, достаточно поменять текст в верхних 5 строчках с дефайнами, ну и сменить картинку и подогнать нужный текст в текстовиках.
А вы наводили курсор на экзешник? Там тоже будут наши копирайты, например имя релизёра и PSPx Team.
За эту информацию при компиляции отвечают эти строки (через Ресторатор они все видны, но на экран выводятся не все):
VersionInfoCompany={#Publisher}
VersionInfoCopyright=(c) 2006-2018 {#Publisher}
VersionInfoProductName={#Name}
VersionInfoDescription={#Name} {#UserName}
VersionInfoVersion={#Version}
А вот так выглядит в Restorator 2007 (исходники там прилагаются):
И тут мы видим в первой же строчке палево: This installation was built with Inno Setup.
На ру-борде я писал решение. Если что, копирну сюда...
Как изменить комментарий в версии получаемого файла установки? А то там всегда оказывается строка This installation was built with Inno Setup. Что-то не нашёл как поменять
Тоже сегодня обратил внимание, что во всех скомпилированных программах в свойствах отображается такая строка комментария. Как-то некрасиво получается. Решил покопаться в файлах и всё-таки оно нашлось.
Короче, запускаем Хекс-редактор (от имени администратора) и открываем в нём файл C:\Program Files\Inno Setup 5\SetupLdr.e32.
Вводим в поиск текстовую строку "This installation was built with Inno Setup." и ищем в формате "Unicode String":
Заменяем справа буквы на пробелы. Или слева меняем код букв на код пробела 0x20 и сохраняем. Имейте в виду, что нули между буквами не трогаем, т.к. это Unicode текст.
Другой способ:
Запускаем редактор ресурсов (от имени администратора) и открываем в нём файл C:\Program Files\Inno Setup 5\SetupLdr.e32.
Идём в секцию "Версия -> 1", видим эту надпись в "Комментарии":
Нажимаем вверху "Режим редактирования" и удаляем эту надпись, либо пишем свою, которая будет впоследствии выступать в качестве шаблона для всех ваших компиляций. Либо вообще можете удалить эту строчку (чуть выше и правее есть кнопка "Удалить").
После редактирования строки, нажимаем F8 или в меню наверху галочку (птичку) и сохраняем.
Вообще-то этот файл используется просто в качестве шаблона, который встраивается в версию при компиляции и заполняется данными из скрипта.
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Последний раз редактировалось ErikPshat; 23.07.2018 в 02:35.
Переделал инсталлятор. Затестите плиззз, понажимайте на кнопочки...
Если у кого есть желание, то можно скачать архивы этой игры, проверить на распаковку и упаковать игру в PKG, выложить релиз и программу рядом )))
Теперь инсталлер автономный. То есть, папку с ресурсами рядом с экзешником держать не надо, т.к. все файлы пакуются в инсталлер, а при запуске, сначала файлы распаковываются во временную папку, после этого запускается окно программы, отрисовывая интерфейс - картинка и все кнопки из временной папки %TEMP%.
Добавлена Splash-заставка перед открытием программы.
Тома архива (001 002 003 004 005) кидаются рядом с экзешником и распаковываются в папку "ExtractedGame" кнопкой программы (для теста прилагаются 5 маленьких томов).
Так же, для таких кто в танке, которые будут спрашивать "А что делать с этими 001?", то можно ссылаться на программу, она распакует любые архивы 001 от любых игр, упакованных с паролем "толькодлясвоих", и скорее всего, любые незапароленные архивы (не проверял), т.к. незапароленные архивы вроде должны распаковываться даже с паролем.
Единственное, не смог пока выставить условие для 32-битного 7z.exe, ведь в проге используется x64.
Есть такая инструкция для проверки через Check, которая извлекает только нужную версию в ходе установки. Но в моём случае это не работает, т.к. у меня нет хода установки, а есть принудительное извлечение, предварительно, перед запуском программы, через функцию ExtractTemporaryFile.
Переделал инсталлятор. Затестите плиззз, понажимайте на кнопочки...
Если у кого есть желание, то можно скачать архивы этой игры, проверить на распаковку и упаковать игру в PKG, выложить релиз и программу рядом )))
Все работает, с заставкой, еще музончик можно добавить
Вопрос, что за библиотека isgsg.dll?
BaseD, ну музончик только раздражает некоторых людей. Конечно приколькно и реализовать не сложно. Но думаю лучше не надо, лишние понты имхо )))
Сообщение от BaseD
Вопрос, что за библиотека isgsg.dll?
Это расшифровывается так: isgsg - Inno Setup GameScript Generator - вышло из проекта любителей Контер Страйк на форуме CSmania.RU. Вообще интересная программа, содержит другие полезные библиотеки и генерирует готовые скрипты.
А сейчас эту прогу можно скачать на Krinkels.org 1.1.0.62. Вот, когда ты указываешь картинку, то поля автоматически заполняются сами. Там ты можешь изменить интервалы времени на свои. И при генерации скрипта, у тебя в папке с проектом появится библиотека isgsg.dll v0.6.0.69.
p1 - хендл окна - WizardForm.Handle
p2 - путь к изображению - ExpandConstant('{tmp}\Splash.png')
p3 - время появления в мс - 1000
p4 - время отображения - 2000
p5 - время затухания - 1000
p6 - минимальная прозрачность изображения (0-255) - 0
p7 - максимальная прозрачность изображения (0-255) - 255
p8 - вырезать или нет цвет из изображения (только для .bmp) - True/False
p9 - какой цвет вырезать - $FFFFFF
p10 - число - 10
Путь до библиотеки DLL - external 'ShowSplashScreen@files:isgsg.dll stdcall delayload'
Там, в последнем посте на CSmania.RU ещё есть интересная программка Codejock Skin Builder. Кстати, я иногда встречал, что к скрипту подключают файлы *.cjstyles, которые выдаёт эта программа.
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Последний раз редактировалось ErikPshat; 22.07.2018 в 21:35.
Итак, думаю это ФИНАЛ! - если вдруг не случатся непредвиденные глюки, в частности на Win32.
Добавлено изменение языка интерфейса при выборе языка на старте.
Добавлено определение битности системы. Если прога запущена на Win32, тогда распаковка архивов производится 32-битным модулем 7-Zip и наоборот с Win64.
Ну и как обычно, просьба потестить программу - на разных языках, на предмет разархивации тестовых архивов 001/7z/ZIP/RAR (прилагаются с программой).
Особенно интересует работа на 32-битной Windows x86...
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Последний раз редактировалось ErikPshat; 29.07.2018 в 09:21.
А вот косяк всё же был.
Если у юзера не установлен был 7-Zip, то выскакивала ошибка типа "Не удалось распаковать архив. Не найден 7z.dll".
У кого был установлен 7-Zip, то архиватор просто тихо подхватывал установленную DLL.
А я об этом подозревал и проверил, удалил архиватор и сразу ошибку поймал.
Пришлось добавлять в программу 2 штуки 7z.dll от x64/x86. Архив выше обновил.
Теперь программа полностью автономна и универсальна
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
А вот косяк всё же был.
Если у юзера не установлен был 7-Zip, то выскакивала ошибка типа "Не удалось распаковать архив. Не найден 7z.dll".
У кого был установлен 7-Zip, то архиватор просто тихо подхватывал установленную DLL.
А я об этом подозревал и проверил, удалил архиватор и сразу ошибку поймал.
Пришлось добавлять в программу 2 штуки 7z.dll от x64/x86. Архив выше обновил.
Теперь программа полностью автономна и универсальна
Ну такой расклад сложно предположить, такие утилиты ставишь обычно сразу, за установкой системы.
Как запретить установку в папку с русскими буквами?
[Setup]
AppName=MyApp
AppVername=MyApp
DefaultDirName={pf}\MyApp
[Code]
function IsAnsi(S: String): Boolean;
var
S1, S2: string;
begin
S1 := AnsiUppercase(S);
S2 := Uppercase(S);
if CompareStr(S1, S2) = 0 then
begin
S1 := Lowercase(S);
S2 := AnsiLowercase(S);
if CompareStr(S1, S2) = 0 then
Result := True;
end;
end;
function NextButtonClick(CurPageID: Integer): Boolean;
begin
Result := True;
if CurPageID = wpSelectDir then
if not(IsAnsi(WizardForm.DirEdit.Text)) then
begin
MsgBox( 'В пути установки присуствуют русские символы'#13#13'Пожалуйста, повторите ввод.', mbError, mb_Ok);
Result := False;
end;
end;
На всякий случай оставлю "Inno Setup Archive Manager" - архивация 7z.dll
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Последний раз редактировалось ErikPshat; 07.09.2018 в 01:05.