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

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

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

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

   

Widok



Moderator-Следопыт
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Это мощное средство для создания установочных пакетов (дистрибутивов) программ. Поддерживается шифрование, установка пароля, различные задачи по завершении установки. Можно создавать свои страницы, используя Inno Setup Form Designer.
По сравнению с NSIS (основной конкурент на бесплатной основе) проще в настройке, имеет более понятную структуру скрипта.  
 
Последний релиз: 5.2.3 [10.03.2008]
История версий | скачать | все сборки || Скачать Preprocessor | все сборки
 
Русификатор от NightW0lf для версии 5.2.0
Скачать | зеркало
 
Русская справка к версиям 5.0.xx
Скачать | зеркало || cкачать в .chm формате
И снова BagIra на высоте
 
Руководство по расширенным возможностям Inno Setup 5 (не для чайников) от Kindly
Версия 5.1 скачать || версия 5 скачать|зеркало || версия 4 скачать|зеркало || версия 3 скачать|зеркало
 
Inno Setup Extensions Knowledge Base (содержит ответы на многие вопросы)
Новая версия (Web-интерфейс) || Старая chm-версия скачать | зеркало
 
Corona Skin & Check System Requirements от Victor_Dobrov
Скачать скрипт | зеркало | скриншот | описание | старая версия | InnoSetup Upgrade | Слайд-шоу
Обложка для Inno Setup. Сделает инсталлятор более симпатичным и добавляет расширения: Проверка минимальных требований. Расширенный прогрессбар. Расчёт времени до завершения распаковки. Список дисков. Слайдшоу или AVI-файл в фоновом окне. Компактный режим установки. Деинсталляция неучтённых файлов. Экран справки/скриншота. Медиаплеер и многое другое...
 
Примечание: начиная с версии 5.1.10 в Inno Setup при использовании в инсталляторе фонового изображения формата BMP стало глючить возможность растягивания картинки на весь экран - чтобы исправить добавьте этот код.
Если необходимо использовать метод проверки внешнего файла через сумму MD5 (который описан в 5 версии руководства от Kindly) для запуска инсталлятора, то понадобится калькулятор хеша MD5, калькулятор сумм MD5, SHA-256, CRC32. Если требуется узнать, какие ключи в реестр вносит та или иная программа, то понадобится RegShot.


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


Мощная надстройка для Inno Setup, при помощи которой создавать свои инсталляторы становится очень просто.
 
Последний релиз: 5.2.1 [15.10.2007]
Скачать | зеркало  
 
Русификатор
Скачать | зеркало

Распаковщик установок, сделанных с помощью Inno Setup. При распаковке извлекаются  ресурсы и скрипт установки (немного усечённый). Возможно подключение к Total Commander или FAR с помощью MultiArc плагинов.
Поддерживает распаковку инсталляторов, сделанных с помощью Inno Setup начиная с версии 3.0.0-beta по 5.2.3
 
Последний релиз: 0.20 [23.05.2008] New
Скачать  
 

Удобная оболочка для облегчения написания скриптов установки для Inno Setup. Обладает некоторыми полезными функциями, которых нет ни у самого Inno Setup, ни у ISTool.
 
Последний релиз: 1.0.3.1 [23.03.2008]
Скачать | обновление | изменения
Примечание: обновление ставится только на Inno Setup Quickstartpack 5.2.3.
 
Старая версия [ScriptMaker 5.1.6.9 от 09.07.2006]
Русификатор версии 5.1.5 от GloThin | зеркало | зеркало | зеркало пароль: ruboard

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

Длинные куски кода помещайте под тегом more, дабы дать возможность знатокам Inno Setup прочитать сам вопрос, а не пролистывать бесконечно длинные листинги скриптов в посте.

Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 17:33 25-09-2007 | Исправлено: juvaforza, 13:39 24-05-2008
Sig666

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Еще еще вопросец.  
 
Допустим, для нормальной установки требуется 1gb свободного места, а для бекапа еще 2gb. Хотелось бы, что бы при нормальной установке, при условии недостаточного места выскакивало сообщение "Недостаточно места на диске", а при обычной установке+выбрано задание "backup" (т.е. тут уже необходима проверка на наличие 3гб места) выскакивало сообщение "Недостаточно места на диске для выполнения резервного копирования"
 
и второй вопрос: скрипт для определения размера файлов в папке назначения из руководства Kindly - не получается добавить проверку для более чем 3х файлов.
Буду благодарен за помощь.
 
Задача решена применением следующего срипта:
 
const
  NeedSize = 5000; //Прописать, сколько мегабайт необходимо
  NeedSizeBackup = 15000; //Прописать, сколько мегабайт необходимо для бекапа
 
  DRIVE_UNKNOWN = 0;
  DRIVE_NO_ROOT_DIR = 1;
  DRIVE_REMOVEABLE = 2;
  DRIVE_FIXED = 3;
  DRIVE_REMOTE = 4;
  DRIVE_CDROM = 5;
  DRIVE_RAMDISK = 6;
 
function GetLogicalDrives: DWORD;
external 'GetLogicalDrives@kernel32.dll stdcall';
 
function GetDriveType(nDrive: String): Longint;
external 'GetDriveTypeA@kernel32.dll stdcall';
 
function NextButtonClick(CurPageID: Integer): Boolean;
var
  Path: String;
  FreeMB, TotalMB: Cardinal;
begin
  Result:= True;
  if CurPageID = wpSelectDir then
    begin
      Path:= ExtractFileDrive(WizardForm.DirEdit.Text);
      GetSpaceOnDisk(Path, True, FreeMB, TotalMB);
      if FreeMB < NeedSize then
        begin
          MsgBox('Недостаточно места на диске!', mbInformation, MB_OK)
          Result:= False;
        end;
    end
 
else
  Result:= True;
  if IsTaskSelected('backup') then
  if CurPageID = wpSelectTasks then
    begin
      Path:= ExtractFileDrive(WizardForm.DirEdit.Text);
      GetSpaceOnDisk(Path, True, FreeMB, TotalMB);
      if FreeMB < NeedSizeBackup then
        begin
          MsgBox('Недостаточно места на диске для выполнения резервного копирования!', mbInformation, MB_OK)
          Result:= False;
        end;
    end;
end;

Всего записей: 134 | Зарегистр. 15-01-2008 | Отправлено: 19:51 25-01-2008 | Исправлено: Sig666, 22:14 25-01-2008
Kutsenko



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
iTASmania_Inc
Срочно прошу помощи!!!
Ты мне дал скрипт ввода пароля по секциям, но я не могу совместить его с InnoSetupUpgrade Виктора Доброва. Помоги мне пожалуйста, очень срочно нада.
Ругается на то что повторяется function MessageBox и Function NextButtonClick.
Вот ссылка на твой скрипт  
http://forum.ru-board.com/topic.cgi?forum=5&topic=24767&start=664&limit=1&m=1#1

Всего записей: 80 | Зарегистр. 19-11-2007 | Отправлено: 21:56 25-01-2008
iTASmania_Inc



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

----------
/* Corona Skin is my FAVOURITE skin for Inno Setup! Must be and must have! */

Всего записей: 443 | Зарегистр. 29-04-2007 | Отправлено: 22:43 25-01-2008
Kutsenko



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
iTASmania_Inc спасибо огромное что переделал, но возникает ещё одна проблемка. Когда я добавляю твои два скрипта Serial.iss и InnoSetupUpgrade.iss в свой то компилирует всё нормально, запускает, но когда нажимаю на кнопку "далее", то выдаёт вот такую ошибку:
 
Runtime error (at 110:54):
Could not call proc.
 
Вот мой Скрипт..  

Всего записей: 80 | Зарегистр. 19-11-2007 | Отправлено: 23:23 25-01-2008
iTASmania_Inc



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Странно, как ошибка не возникала до этого? o_O
Ведь отсутствует WidowsHook.iss, по которому идут операции с таймером. Сам скрипт находится в архиве Corona Skin.

----------
/* Corona Skin is my FAVOURITE skin for Inno Setup! Must be and must have! */

Всего записей: 443 | Зарегистр. 29-04-2007 | Отправлено: 23:47 25-01-2008
Kutsenko



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
iTASmania_Inc
Ошибка была в другом. Я чтото продуплил, забыл дописать SerialPage() в свой скрипт, поэтому и писало ошибку. Ещё раз спасибо за переделку скрипта .
 
Добавлено:
iTASmania_Inc
Не подскажеш почему инсталятор начинает очень долго грузится (секунд 20-28) после того как я запихаю файлов гдето на метров 180, если мало запихаю в инстал то грузится быстро, в чём может быть ошибка? Скрипт какой я выкладывал что на 3 сообщения выше, именно им я польуюсь. Может какаято ошибка в скрипте?
Строку для большой папки откуда запихаются все файлы в инсталятор я пишу так:
Source: F:\WORK\juiced 2\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs;

Всего записей: 80 | Зарегистр. 19-11-2007 | Отправлено: 23:56 25-01-2008
iTASmania_Inc



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

Цитата:
очень долго грузится (секунд 20-28)

Файлы, которые извлекаются во временную папку стоят в начале секции [Files]? Если да, то инсталлятор будет перебирать все файлы, пока не дойдёт до них --> отсюда задержки перед запуском. Как выход: перемещай все временные файлы в начало секции (если их немного), либо просто допиши к ним флаг solidbreak.

----------
/* Corona Skin is my FAVOURITE skin for Inno Setup! Must be and must have! */

Всего записей: 443 | Зарегистр. 29-04-2007 | Отправлено: 10:38 26-01-2008
elchupakabra



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите пожалуйста (пробежался по хелпу и примерам не нашёл) в какай секции и что необходимо прописать для встраивания устанавливаемой программы в автозагрузку.
Заранее спасибо.

Всего записей: 1571 | Зарегистр. 05-11-2005 | Отправлено: 11:31 26-01-2008
iTASmania_Inc



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
elchupakabra
В секции [Registry] создаётся ключ:
Root: HKLM; SubKey: SOFTWARE\Microsoft\Windows\CurrentVersion\Run; ValueType: string; ValueName: ----; ValueData: ----;
В ValueName и ValueData уже непоследственно указывается, что загружается и откуда.


----------
/* Corona Skin is my FAVOURITE skin for Inno Setup! Must be and must have! */

Всего записей: 443 | Зарегистр. 29-04-2007 | Отправлено: 11:44 26-01-2008
Kutsenko



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
iTASmania_Inc
А как именно дописывать тот флаг solidbreak , ведь у меня стоит совсем другой флаг?

Всего записей: 80 | Зарегистр. 19-11-2007 | Отправлено: 11:49 26-01-2008
iTASmania_Inc



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Kutsenko
Флагов может быть сколько угодно, главное, чтобы они разделялись пробелами.
Пример: Source: License.rtf; DestDir: {tmp}; Flags: dontcopy noencryption

----------
/* Corona Skin is my FAVOURITE skin for Inno Setup! Must be and must have! */

Всего записей: 443 | Зарегистр. 29-04-2007 | Отправлено: 11:53 26-01-2008
Kutsenko



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
И этот флаг solidbreak добавлять до всех файлов которые будут кидаться в темп
или наоборот только к той папке с которой все файлы будут копироваться в инсталятор?

Всего записей: 80 | Зарегистр. 19-11-2007 | Отправлено: 12:02 26-01-2008
Sig666

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Помогите пожалуйста скрестить этот скрипт
с этим (требуется только проверка размера 1 файла)

Всего записей: 134 | Зарегистр. 15-01-2008 | Отправлено: 18:54 26-01-2008
serg_aka_lain

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sig666
 
Подробнее...
 
p.s. Проверку присутствия и размер ИМХО лучше при инициализации делать.

Всего записей: 340 | Зарегистр. 13-01-2007 | Отправлено: 22:45 26-01-2008 | Исправлено: serg_aka_lain, 22:50 26-01-2008
Sig666

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
serg_aka_lain
 
Спасибо конечно, но мне нужна проверка на этапе выбора директории..
 
Методом проб и ошибок собрал скрипт, выполняющий все поставленные задачи, но хотелось бы, чтобы в случае нехватки места (даже при установке в неверную директорию) не проводилась проверка на наличие и размер файлов (сейчас при этих условиях выскакивают 2 окошка подряд: о нехватке места и о не обнаружении файлов), что в данном случае нафиг не нужно. Вот как бы избежать этого.
сам скрипт

Всего записей: 134 | Зарегистр. 15-01-2008 | Отправлено: 00:20 27-01-2008 | Исправлено: Sig666, 00:22 27-01-2008
serg_aka_lain

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sig666
 
Ну если только это надо то я сделалб так
 
    begin
      MsgBox('Недостаточно места на диске!', mbInformation, MB_OK)
       Result:= False;
       WizardForm.Close;
     end
 
и сразу выход из установки без подтверждения
 
procedure CancelButtonClick(CurPageID: Integer; var Cancel, Confirm: Boolean);
begin
 Confirm:= False;
end;
 
Просто в этой функции (NextButtonClick) при повторном нажатии Next, возможен переход
к следующей странице
 
или так
 
    begin
      MsgBox('Недостаточно места на диске!', mbInformation, MB_OK)
       Result:= False;
       exit;
     end
 
Проверка на этом просто остановится.
 

Всего записей: 340 | Зарегистр. 13-01-2007 | Отправлено: 00:58 27-01-2008
Sig666

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
serg_aka_lain
 
3й вариант то что надо. Спасибище.

Всего записей: 134 | Зарегистр. 15-01-2008 | Отправлено: 03:13 27-01-2008
Victor_Dobrov



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Corona Skin & Check System Requirements (473 Кб в архиве) - расширение инсталлятора Inno Setup.
 
Доработка: Избавил юзеров (да и себя тоже) от вычисления MD5 хэша для пароля и серийника, они теперь указываются в скрипте так, как должны быть набраны, а затем конвертируются/шифруются автоматически в процессе сборки.

Всего записей: 742 | Зарегистр. 27-09-2005 | Отправлено: 10:22 27-01-2008
Raf_SE



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А ктонить знает как сделать чтбы было слайдшоу на весь экран. И файлы которые берутся для него чтобы были в самой инсталяхе. Т.е. для скрипта Victor_Dobrov'а картинки должны быть в папке Slides, а мне нужно чтобы небыло никаких папок, был только инсталлятор. Еще хотелось бы чтобы инсталлятор запускался в левом нижнем углу экрана.
Я знаю что подобный скрипт уже выкладывал Vitalliano, но ссылка на него уже простроченная.
И возможно ли чтобы время показа картинок определялось самой инсталяхой? Т.е. чтоб они не повторялись.
Еще интересует что нужно прописать чтобы деинсталятор спрашивал ли удалять сохранения игры. (прогу от 1с не предлагать)

----------
«Фашисты будущего будут называть себя антифашистами» ©

Всего записей: 1143 | Зарегистр. 06-08-2006 | Отправлено: 17:01 27-01-2008 | Исправлено: Raf_SE, 17:17 27-01-2008
Victor_Dobrov



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Raf_SE, если рисунки будут в инсталляторе, Мастер открывается тем дольше, чем больше файлов (даже при выключенном сжатии)

Всего записей: 742 | Зарегистр. 27-09-2005 | Отправлено: 00:38 28-01-2008
   

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

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


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru