Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Inno Setup - создание инсталляционных пакетов (Часть 15)

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151

Открыть новую тему     Написать ответ в эту тему

Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Inno Setup
 
 

Предыдущие части
Это мощное бесплатное средство для создания установочных пакетов (дистрибутивов) программ. Поддерживается шифрование, установка пароля, различные задачи по завершении установки.
По сравнению с NSIS (основной конкурент на бесплатной основе) проще в настройке, имеет более понятную структуру скрипта, но генерит на 200-300 кб больший инсталятор. На данный момент он конкурирует и даже превосходит многие коммерческие установщики по функциональности и стабильности.
All version | Исходники проекта
 
Последние версии:
Inno Setup QuickStart Pack (Unicode) 6.1.2 [15.11.2020]
Скачать (4.23 Mb)
 
Inno Setup 6.2.2 [15.02.2023]
Скачать (4.50 Mb)
 
Что нового? | Что нового v.6x?  
 
Русский язык для Inno Setup v6.x
Скачать
 
Русский язык для Inno Setup v5.x
Скачать
 
Русская справка к версии - 6.0.0 beta | 5.6.1 - Зеркало
 
Последняя версия с поддержкой Windows 95 - 5.1.7
 
Последняя версия с поддержкой Windows 98/ME/NT4 - 5.4.3 ANSI
 
Последняя версия с поддержкой Windows 2000/XP/2003 - 5.6.1 (ANSI, Unicode)
 

Расширенная версия от китайских собратьев. Офсайт
Inno Setup Compiler 5.5.0-5.2 build 121216
Скачать (2.98 Mb) |Скачать (2.98 Mb) - зеркало GoogleDrive | Что нового
 
Inno ISCmplr Setup 5.5.1 build 120726
Скачать (1.73 Mb) | Что нового
 
Добавляет списку компонентов возможность сворачивать дочерние элементы. Содержит более удобный редактор, кроме того, компилятор имеет множество других возможностей и новых функций. На сайте автора также есть дополнительные библиотеки.
 
Русский язык для Inno Setup Enhanced (Restools) версии 5.4.x (ansi и unicode) от vadimsva
Скачать
 


Документация, FAQ, и различные примеры для Inno Setup - Здесь можно найти различную документацию, примеры, архивы веток InnoSetup для оффлайн просмотра, и т.д.
 
Дополнительные библиотеки для Inno Setup - InnoTools Downloader, коллекция DLL файлов, распаковка архивов 7-zip и FreeArc и т.д.
 
Дополнительные утилиты для Inno Setup - сюда входят различные распаковщики, надстройки над Inno Setup, различные генераторы скриптов, утилита объединения скриптов и т.д.
 
Скрипты инсталляторов для игр - В этом разделе можно найти различные обложки и скрипты инсталляторов для игр.  
 
Скрипт для добавления ярлыков в Game Explorer (работает только в Windоws 7)

Родственные темы:

Inno Setup плюс внешние упаковщики - обсуждение FreeArc+Inno, Precomp+Inno, 7zip+Inno и Inno+остальные внешние упаковщики.
 
Пережатиe/Pекомпрессия/Oптимизация файлов для лучшего сжатия - обсуждение того, какими утилитами/способами лучше сжимать, чтобы получить как можно меньший размер инсталятора.

Примечание для всех участников

Правила топика посвященному Inno Setup  
 
Перед тем, как задать вопрос: Первый вариант: загрузите "версию для печати" (ссылка справа вверху, над номерами страниц) и попробуйте поискать средствами браузера (ctrl+F). Второй вариант: для экономии трафика и для более удобного поиска, скачайте оффлайн версию форума для просмотра в разделе Документация.
Большинство типовых задач уже решались, причем неоднократно!  
Пожалуйста, не захламляйте тему и используйте поиск, этим вы избавите тему от флуда!

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 23:29 13-10-2013 | Исправлено: Komandor, 10:55 21-01-2024
BlackInferno1989

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vint56
благодарю!
 
Добавлено:
vint56
Есть маленький косяк, окно это под прогрессбаром не имеет ползунок прокрутки текста, т.е. если текста слишком много для прокрутки его нужно поставить курсор в поле с текстом и стрелочками "вверх/вниз" двигать окно.
Как это исправить?

Всего записей: 10 | Зарегистр. 10-12-2013 | Отправлено: 18:39 06-01-2014
AlekseyPopovv



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vint56
Как сделать, что бы при деинсталяции это всё удалилось:
procedure CurStepChanged(CurStep: TSetupStep);  
 begin  
   if (CurStep=ssDone) then  
   begin  
     RegWriteStringValue(HKEY_CLASSES_ROOT, '.amltkey', '', 'MultiSet');  
     RegWriteStringValue(HKEY_CLASSES_ROOT, 'MultiSet\DefaultIcon', '', ExpandConstant('{app}\doc.ico,0'));  
     RegWriteStringValue(HKEY_CLASSES_ROOT, 'MultiSet\shell\open\command', '', ExpandConstant('{app}\MULTISET.EXE " "%1"'));  
   end;  
 end;

Всего записей: 266 | Зарегистр. 25-03-2013 | Отправлено: 19:51 06-01-2014
vint56



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
BlackInferno1989
 
Подробнее...
 
 
AlekseyPopovv
 
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
 begin
 if CurUninstallStep = usUninstall then
 begin
   RegDeleteKeyIncludingSubkeys(HKCR, '.amltkey')
   RegDeleteKeyIncludingSubkeys(HKCR, 'MultiSet')
end;
end;

Всего записей: 1277 | Зарегистр. 07-10-2008 | Отправлено: 20:13 06-01-2014 | Исправлено: vint56, 20:38 06-01-2014
Tapas77789



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
BUU

Цитата:
Всем привет, можно в inno setup сделать такое - при указании куда будет ставиться игра или программа, и установщик определял есть там файлы какие нибудь, запрет проще сказать, указал с файлами, нельзя, выбрал пустую, начал установку, спс заранее

 
NotEmptyFile
NotEmptyFile2

Всего записей: 70 | Зарегистр. 26-05-2008 | Отправлено: 20:26 06-01-2014 | Исправлено: Tapas77789, 20:42 06-01-2014
AlekseyPopovv



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как сделать, что бы сначала (уже после выбора папки по нажатию на кнопку "установить") запускался .bat файл в скрытом режиме, а после того как он все функции выполнит продолжалась установка?

Всего записей: 266 | Зарегистр. 25-03-2013 | Отправлено: 20:31 06-01-2014
Tapas77789



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AlekseyPopovv
function NextButtonClick(CurPageID: Integer): Boolean;
var
  ResultCode: Integer;
begin
  Result:=True;
  if CurPageID = wpReady then
  ShellExec('',ExpandConstant('{app}\script.bat'),'','',SW_HIDE,ewWaitUntilTerminated,ResultCode);
end;

Всего записей: 70 | Зарегистр. 26-05-2008 | Отправлено: 20:48 06-01-2014 | Исправлено: Tapas77789, 20:48 06-01-2014
AlekseyPopovv



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Tapas77789
Спасибо.
Как сделать, что бы при деинсталяции это всё удалилось:  
procedure CurStepChanged(CurStep: TSetupStep);  
 begin  
   if (CurStep=ssDone) then  
   begin  
     RegWriteStringValue(HKEY_CLASSES_ROOT, '.amltkey', '', 'MultiSet');  
     RegWriteStringValue(HKEY_CLASSES_ROOT, 'MultiSet\DefaultIcon', '', ExpandConstant('{app}\doc.ico,0'));  
     RegWriteStringValue(HKEY_CLASSES_ROOT, 'MultiSet\shell\open\command', '', ExpandConstant('{app}\MULTISET.EXE " "%1"'));  
   end;  
 end;

Всего записей: 266 | Зарегистр. 25-03-2013 | Отправлено: 21:06 06-01-2014
tyumenik

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vint56, понимаю, например 1 - медленно, 3 - среднее, 5 - быстро. Вот надо скрипт
 
Добавлено:
P.S. пример файл-ини и реестр

Всего записей: 107 | Зарегистр. 12-09-2010 | Отправлено: 21:31 06-01-2014
BUU



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Tapas77789
Спс, буду тестить

Всего записей: 181 | Зарегистр. 15-08-2008 | Отправлено: 22:16 06-01-2014
Tapas77789



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AlekseyPopovv
Вот так у меня все работает
 
procedure CurStepChanged(CurStep: TSetupStep);
begin
  if CurStep=ssDone then
  begin
    RegWriteStringValue(HKEY_CLASSES_ROOT, '.amltkey', '', 'MultiSet');
    RegWriteStringValue(HKEY_CLASSES_ROOT, 'MultiSet\DefaultIcon', '', ExpandConstant('{app}\doc.ico,0'));
    RegWriteStringValue(HKEY_CLASSES_ROOT, 'MultiSet\shell\open\command', '', ExpandConstant('{app}\MULTISET.EXE " "%1"'));
  end;
end;
 
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
  if CurUninstallStep = usPostUninstall then
  begin
    RegDeleteKeyIncludingSubkeys(HKCR, '.amltkey');
    RegDeleteKeyIncludingSubkeys(HKCR, 'MultiSet');
  end;
end;

Всего записей: 70 | Зарегистр. 26-05-2008 | Отправлено: 22:26 06-01-2014 | Исправлено: Tapas77789, 22:29 06-01-2014
AlekseyPopovv



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Tapas77789
Спасибо. Вот такая ещё проблема, может я просто не вижу в чём дело:
Подробнее...
Ни папку не создаёт ни файла ни чего. Что не так?

Всего записей: 266 | Зарегистр. 25-03-2013 | Отправлено: 22:37 06-01-2014
Tapas77789



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AlekseyPopovv
 
Лишние флаги били, убрал работает
 
[Files]
Source: settings.ini; DestDir: "{userappdata}\Atomic Alarm Clock 6"; Flags: IgnoreVersion;
 
[UninstallDelete]
Type: dirifempty; Name: "{userappdata}\Atomic Alarm Clock 6";

Всего записей: 70 | Зарегистр. 26-05-2008 | Отправлено: 22:46 06-01-2014 | Исправлено: Tapas77789, 00:43 07-01-2014
vint56



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AlekseyPopovv
procedure CurStepChanged(CurStep: TSetupStep);  
 begin  
 if (CurStep = ssPostInstall) then  
 CreateDir(ExpandConstant('{userappdata}\Atomic Alarm Clock 6'))
 if LangRus.Checked then  
 SetIniString('Options', 'Language', '0', ExpandConstant('{userappdata}\Atomic Alarm Clock 6\settings.ini'));  
 if LangEng.Checked then  
 SetIniString('Options', 'Language', '1', ExpandConstant('{userappdata}\Atomic Alarm Clock 6\settings.ini'));  
 if LangUkr.Checked then  
 SetIniString('Options', 'Language', '3', ExpandConstant('{userappdata}\Atomic Alarm Clock 6\settings.ini'));  
 end;

Всего записей: 1277 | Зарегистр. 07-10-2008 | Отправлено: 23:17 06-01-2014
AlekseyPopovv



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vint56
Понятно. Спасибо. Получилось.
Tapas77789
Да, так тоже можно.

Всего записей: 266 | Зарегистр. 25-03-2013 | Отправлено: 23:29 06-01-2014 | Исправлено: AlekseyPopovv, 19:50 07-01-2014
MOD_TEC



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Дайте пожалуйста примерчик если есть у кого компоненты через TasksList

Всего записей: 82 | Зарегистр. 14-02-2012 | Отправлено: 12:27 07-01-2014
AlekseyPopovv



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vint56
Как из твоего примера сделать, что бы допустим на 64bit - отображались оба ярлыка (Ярлык на Рабочем столе и Ярлыки в меню Пуск), а на 32bit - только один ярлык (Ярлык на Рабочем столе)?
P.S. Можно весь скрипт не писать, а только то, что дописать надо. Спасибо.

Всего записей: 266 | Зарегистр. 25-03-2013 | Отправлено: 19:56 07-01-2014
vint56



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AlekseyPopovv
#define MainExe "{app}\Bin32\crysis.exe"
#define MainExe64 "{app}\Bin64\crysis.exe"
#define MainExeDir Copy(MainExe, 1, RPos("\", MainExe)-1)
#define MainExe64Dir Copy(MainExe64, 1, RPos("\", MainExe64)-1)
 
[Icons]
Name: "{group}\{#AppName}"; FileName: "{#MainExe64}"; WorkingDir: "{#MainExe64Dir}"; Check: IsWin64
Name: "{group}\{#AppName}"; FileName: "{#MainExe}"; WorkingDir: "{#MainExeDir}"; Check: not IsWin64
Name: "{userdesktop}\{#AppName}"; FileName: "{#MainExe64}"; WorkingDir: "{#MainExe64Dir}"; Tasks: desktopicon; Check: IsWin64
Name: "{userdesktop}\{#AppName}"; FileName: "{#MainExe}"; WorkingDir: "{#MainExeDir}"; Tasks: desktopicon; Check: not IsWin64
Name: "{group}\Удалить игру"; FileName: "{uninstallexe}"; IconFileName: "{sys}\shell32.dll"; IconIndex: 32

Всего записей: 1277 | Зарегистр. 07-10-2008 | Отправлено: 20:59 07-01-2014
AlekseyPopovv



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vint56
Извини, не так выразился.  
Подробнее...

Всего записей: 266 | Зарегистр. 25-03-2013 | Отправлено: 21:14 07-01-2014
Nightmareterrible

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
По ссылке "Документация, FAQ, и различные примеры для Inno Setup" в первом посте у некоторых файлов битые ссылки, в частности, оффлайн версии форума 9-11 и расширенное руководство Inno Setup.
Может кто-нибудь прислать вышеуказанные файлы?
Для предотвращения битых ссылок могу предложить разместить некоторые файлы у себя на хостинге - он достаточно надёжен и пока ни разу не падал за 3 года.

Всего записей: 9 | Зарегистр. 08-01-2014 | Отправлено: 05:58 08-01-2014
nik1967



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Залил на облако.mail оффлайн версии форума 9-11. Расширенное руководство Inno Setup у себя что то не нашёл.

Всего записей: 1076 | Зарегистр. 11-10-2006 | Отправлено: 08:05 08-01-2014
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151

Компьютерный форум Ru.Board » Компьютеры » Программы » Inno Setup - создание инсталляционных пакетов (Часть 15)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru