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

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

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

Widok (23-04-2007 18:02): лимит страниц. продолжаем здесь  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

haav



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

 
 
Это мощное средство для создания установочных пакетов [дистрибутивов] программ. Поддерживается шифрование, установка пароля, различные задачи по завершении установки. Можно легко самим создавать диалоги, используя спец. дизайнер. И всё это абсолютно бесплатно! По сравнению с NullSoft [основной конкурент на бесплатной ниве] мне albel понравилась более интуитивно-понятная структура скрипта, простота в настройке.  
 
Последний релиз: 5.1.11 [1 Марта 2007 года]
История версий | скачать  
 
Русификатор от NightW0lf для версии 5.1.11  
Скачать | зеркало
 
Русская справка к версиям 5.0.xx
Скачать | зеркало || cкачать в .chm формате
И снова BagIra на высоте
 
Руководство по расширенным возможностям Inno Setup 5 [не для чайников] от Kindly
[3 версия]  
Скачать | зеркало
[4 версия]  
Скачать | зеркало
[5 версия]  
Скачать | зеркало
 
Inno Setup Extensions Knowledge Base  
Скачать | зеркало
 
Примечание: начиная с версии 5.1.10 в Inno Setup при использовании в инсталляторе фонового изображения формата BMP стало глючить возможность растягивания картинки на весь экран - чтобы это исправить добавьте этот код.
Если вы захотите использовать метод проверки внешнего файла через сумму MD5 [который описан в 5 версии руководства по программированию в Inno Setup] для запуска инсталлятора то вам понадобится калькулятор суммы MD5, калькулятор сумм MD5, SHA-256, CRC32. Если вы хотите узнать какие ключи в реестр вносит та или иная программа [или игра] то Вам понадобится RegShot.



Дополнительные утилиты для Inno Setup



ISTool
 
www.istool.org
 
Последний релиз: 5.1.8 [18 Октября 2006 года] New
Скачать | зеркало  
[как сказано в описании изменений, добавлена поддержка новых директив 5.1.8]
 
Русификатор
Скачать | зеркало


 
Распаковщик установок, сделанных с помощью Inno Setup. При распаковке извлекаются  ресурсы и скрипт установки [немного усечённый]. Возможно подключение к TotalCommander или FAR с помощью MultiArc плагинов.
 
Поддерживает распаковку инсталляторов, сделанных с помощью Inno Setup начиная с версии 3.0.0-beta по 5.1.10
 
Последний релиз: 0.19
Скачать | зеркало


 
Удобная оболочка для облегчения написания скриптов установки для INNO SETUP. Обладает некоторыми полезными функциями, которых нет ни у самого INNO, ни у ISTool.
 
Последний релиз: 5.1.6.9 [09 Июль 2006 года]
Скачать 4.2 мб | обновление 3.1 мб
 
Русификатор от GloThin
Скачать с сайта GloThin | Зеркало | Зеркало | зеркало
Пароль: ruboard
Примечание: офф. сайт косо отображается в Oper`е.
 
Новое название проекта на сайте, похоже произошла замена ScriptMaker на:
 
Inno Script Generator

Последний релиз: 1.02.5 [02 Апреля 2007 года]
Скачать | обновление
Примечание: обновление ставится только на Inno Setup Quickstartpack 5.1.11.

Всего записей: 67 | Зарегистр. 11-12-2001 | Отправлено: 15:23 09-10-2002 | Исправлено: NightW0lf, 15:16 15-04-2007
Genri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
NightW0lf -- в функции InitializeWizard у тебя есть строки:
WizardForm.Position:=poScreenCenter;
MainForm.BORDERSTYLE:=bsNone;
... которые вызывают пересоздание форм. Из-за этого и проблема.
 
Решить можно следующим способом:
1. В секцию [Files] добавить строку:
Source: "License.rtf"; DestDir: {tmp}; Flags: dontcopy noencryption
 
2. В процедуре InitializeWizard объявить еще одну переменную:
License: String;
 
3. После (обязательно после!) строк:
WizardForm.Position:=poScreenCenter;
MainForm.BORDERSTYLE:=bsNone;
...добавить:
 ExtractTemporaryFile('License.rtf');
 LoadStringFromFile(ExpandConstant('{tmp}')+'\License.rtf', License)
 WizardForm.LicenseMemo.RTFText:= License;

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 14:47 31-12-2006 | Исправлено: Genri, 14:48 31-12-2006
NightW0lf



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Genri
ОГРОМНОЕ ТЕБЕ СПАСИБО ЗА ПОМОЩЬ!
С наступающим Новым Годом!

Всего записей: 479 | Зарегистр. 08-11-2006 | Отправлено: 17:24 31-12-2006
svs123456789

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Поздравляю всех с Новым годом!  
и огромная благодарность  Genri за его помощь!  
желаю всем счастья и здоровья!

Всего записей: 2934 | Зарегистр. 10-04-2003 | Отправлено: 19:18 31-12-2006 | Исправлено: svs123456789, 19:45 31-12-2006
Chanka

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

Всего записей: 208 | Зарегистр. 24-08-2006 | Отправлено: 19:27 31-12-2006
NightW0lf



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
С Наступившим ВСЕХ!
Подскажите как можно сделать проверку прав пользователя при запуске инсталлятора (типа "для правильной работы инсталлятора нужны права администратора!" Вы уверены, что хотите продолжить? Да\Нет)?
Заранее благодарю!  

Всего записей: 479 | Зарегистр. 08-11-2006 | Отправлено: 23:59 01-01-2007 | Исправлено: NightW0lf, 00:00 02-01-2007
Genri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
NightW0lf
function IsAdminLoggedOn: Boolean;  
Description:  
Returns True if an administrator is logged onto the system. Always returns True on Windows 95/98/ME.  
--------------
function IsPowerUserLoggedOn: Boolean;  
Description:  
Returns True if a Power User is logged onto the system. Always returns True on Windows 95/98/ME.  
 
Добавлено:
---- Пример использования ----
function InitializeSetup(): Boolean;
begin
Result:= True;
  if Not IsAdminLoggedOn then
    begin
      if MsgBox('Are you sure?', mbConfirmation, MB_YESNO) <> IDYES then
             Result:= False;
    end;
end;

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 00:43 02-01-2007
NightW0lf



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Genri
Спасибо попробую!
 
Добавлено:
А можно сделать так:
 
1. Чтобы после установки на странице завершения был пункт (с галочкой) перезагрузить компьютер?
2. Изменить текст на странице завершения в месте с название кнопки.
3. Создать резервную копию во время установки, и кнопку перед установкой "Создать резервную копию оригинальных файлов" с галочкой.  
 
Заранее благодарю!

Всего записей: 479 | Зарегистр. 08-11-2006 | Отправлено: 01:25 02-01-2007 | Исправлено: NightW0lf, 03:51 02-01-2007
omals

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

Цитата:
А можно сделать так:  
1. Чтобы после установки на странице завершения был пункт (с галочкой) перезагрузить компьютер

 
[Setup]: AlwaysRestart
Valid values:
 yes or no  
Default value:
 no  
Description:
When set to yes, Setup will always prompt the user to restart the system at the end of a successful installation, regardless of whether this is necessary (for example, because of [Files] section entries with the restartreplace flag).
 
 
Добавлено:

Цитата:
2. Изменить текст на странице завершения в месте с название кнопки

Можно делать по разному
1. ищем текст который там выводится в Default.isl (и все остальных) файлах языков
и меняем на свой текст
2. в файлах языков .isl  записывам свое сообщение в [CustomMessages]
и потом его используем подменяя стандартное.
 

Всего записей: 110 | Зарегистр. 04-12-2006 | Отправлено: 12:03 02-01-2007
Genri

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

Цитата:
Создать резервную копию во время установки, и кнопку перед установкой "Создать резервную копию оригинальных файлов" с галочкой
-- Пример здесь..
 Изменения:
Добавлена возможность создавать папку для бэкапа с именем по текущим дата/время.

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 13:45 02-01-2007 | Исправлено: Genri, 15:04 02-01-2007
NightW0lf



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Genri
Спасибо работает!
Но вот у меня еще возник один вопросик по поводу "Резервных копий".  
Вопрос:
Теперь мне надо чтобы инсталлятор заменил оригинальный файл (на пример - myprog1.exe) на такой же, но только обновленный, и во время установки в директории программы была сразу создана папка "Backup_Files" (т.е. у пользователя инсталлятор не должен спрашивать ни название папки, ни где размещать ее, а нужно чтобы инсталлятор создавал все сам автоматически).

Всего записей: 479 | Зарегистр. 08-11-2006 | Отправлено: 17:44 02-01-2007
Genri

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

Цитата:
у пользователя инсталлятор не должен спрашивать ни название папки, ни где размещать ее, а нужно чтобы инсталлятор создавал все сам автоматически
-- Берем предыдущий скрипт и удаляем все лишнее
Код:
 
[Setup]
AppName=My Program
AppVerName=My Program version 1.5
DefaultDirName={pf}\My Program
Compression=lzma
SolidCompression=yes
Uninstallable=no
 
[Files]
Source: Files\*.*; DestDir: {app}; BeforeInstall: CreateBackup
 
[Code]
var
  ArcDir: String;
 
procedure CreateBackup();
var
  SrcFile, DestFile: string;
begin
  ArcDir:= AddBackslash(ExpandConstant('{app}\Backup')) +
                  GetDateTimeString('yyyy/mm/dd hh:nn', '_', '.' );
  ForceDirectories(ArcDir);
  SrcFile:= AddBackslash(ExpandConstant('{app}')) + ExtractFileName(CurrentFileName);
  DestFile:= AddBackslash(ArcDir) + ExtractFileName(CurrentFileName);
  FileCopy(SrcFile, DestFile, False);
end;  


Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 18:14 02-01-2007
Mihagod

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите как разбить сетап на части? а то он делает всё одним файлом, и по достижении двух гигабайт удаляется.
Буду очень признателен, заранее спасибо!

Всего записей: 2 | Зарегистр. 02-01-2007 | Отправлено: 18:53 02-01-2007
NightW0lf



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

Цитата:
Подскажите как разбить сетап на части? а то он делает всё одним файлом, и по достижении двух гигабайт удаляется.


Код:
 
[Setup]
DiskSpanning=yes
;Размер тома в байтах (здесь 695 мегабайт, уменьшите значение, если вы записываете меню автозапуска)
DiskSliceSize=730000000
 


Всего записей: 479 | Зарегистр. 08-11-2006 | Отправлено: 19:16 02-01-2007
Genri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
NightW0lf -- Здесь пример скрипта, автоматически создающего бэкапы в папки с именем по дата/время. Кол-во бэкапов задается в скрипте. При превышении кол-ва, самые старые будут удалены.

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 19:37 02-01-2007
NightW0lf



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Genri
Работает, НО не совсем - т.е. почему-то не получается переписать (заменить) файл myprog1.exe на такойже, но только обновленный.  
И как сделать чтобы деинсталлятор от программы обновления мог удалить обновленный файл и папку с резервной копией и если это возможно вернуть оригинальный файл из папки с резервной копией на место.
 
Буду ОЧЕНЬ признателен!!

Всего записей: 479 | Зарегистр. 08-11-2006 | Отправлено: 19:42 02-01-2007 | Исправлено: NightW0lf, 21:12 02-01-2007
Genri

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

Цитата:
не получается переписать (заменить) файл myprog1.exe на также, но только обновленный.
-- если я правильно понял, то не получается проапдейтить файл, а не сохранить в бэкап копию файла. Тогда проблема у тебя в скрипте. Давай скрипт.
 
 
Добавлено:
... либо myprog1.exe в момент апдейта запущен.

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 20:42 02-01-2007
NightW0lf



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

Цитата:
-- если я правильно понял, то не получается проапдейтить файл

Да ты понял правиьно именно это я хочу.
 
Я сейчас эксперементирую на обычном скрипте!
 
Но если надо то вот скрипт патча

Всего записей: 479 | Зарегистр. 08-11-2006 | Отправлено: 21:06 02-01-2007 | Исправлено: NightW0lf, 21:11 02-01-2007
Genri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
NightW0lf --  у тебя в скрипте строка:
Source: "C:\MyProg.exe"; DestDir: {app}; BeforeInstall: CreateBackup; Flags: onlyifdoesntexist uninsneveruninstall  
 
Цитата из хелпа:
Цитата:
onlyifdoesntexist  
Устанавливает файл только в случае, если такого файла в системе пользователя нет.

Намек понял?
 

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 22:12 02-01-2007
NightW0lf



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Genri
С ним или без него "Flags: onlyifdoesntexist" все равно!
 

Цитата:
Не получается переписать (заменить) файл myprog.exe на такой же, но только обновленный.  
И как сделать чтобы деинсталлятор от программы обновления мог удалить обновленный файл и папку с резервной копией и если это возможно вернуть оригинальный файл из папки с резервной копией на место.

 
 
Добавлено:
Genri
Вот пример инсталлятора где реализовано то что хочу!
P.S.: Размер его ~550 килобайт

Всего записей: 479 | Зарегистр. 08-11-2006 | Отправлено: 22:21 02-01-2007 | Исправлено: NightW0lf, 23:03 02-01-2007
Genri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
NightW0lf -- добавь флаг:
Flags:  ignoreversion

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 23:06 02-01-2007
   

Страницы: 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

Компьютерный форум Ru.Board » Компьютеры » Программы » Inno Setup (создание инсталяционных пакетов)
Widok (23-04-2007 18:02): лимит страниц. продолжаем здесь


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru