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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
Kutsenko



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
2 viktor9
Конечно он будет ругаться. Нужен формат файла ***.ico

Всего записей: 80 | Зарегистр. 19-11-2007 | Отправлено: 22:33 25-02-2008
GRom V

Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Подскажите ПЛИЗЗ! -1) Как во время "просьбы" инсталлятора о смене диска проиграть мелодию1.wav. А после того как вставлю следующий проиграть мелодию2.wav
 
2) Как во время "просьбы" инсталлятора о смене диска изменить текст (Вставте следующий диск) ИМЕННО В КОДЕ???

Всего записей: 466 | Зарегистр. 31-10-2006 | Отправлено: 04:55 26-02-2008 | Исправлено: GRom V, 05:02 26-02-2008
Wilmots



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

----------
1st

Всего записей: 1539 | Зарегистр. 16-05-2006 | Отправлено: 06:32 26-02-2008 | Исправлено: Wilmots, 06:33 26-02-2008
noiseless

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
2Cemkey
Вот я делал для игры Icewind Dale II установку No-CD
Подробнее...

Всего записей: 182 | Зарегистр. 06-02-2006 | Отправлено: 11:15 26-02-2008 | Исправлено: noiseless, 11:18 26-02-2008
omals

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
имеется  
Source: "..\app\MyDLL.dll"; DestDir: "{sys}"; Flags: ignoreversion overwritereadonly restartreplace; Attribs: hidden system readonly;
она локнута системой
запускаю еще раз инсталятор
появляєтся окно что нужно рестартнуть комп
как избавится от этого окна и не рестартить?

Всего записей: 110 | Зарегистр. 04-12-2006 | Отправлено: 12:32 26-02-2008
Kutsenko



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
2 omals.
Если я не ошибаюсь то убери флаг restartreplace

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

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

Всего записей: 110 | Зарегистр. 04-12-2006 | Отправлено: 15:22 26-02-2008
Sandy Ann

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Подскажите, как в инсталляторе прописать запись подобного кода в ini-файл:

Код:
CDDrive1=S:
CDDrive2=S:
CDDrive3=S:
HDDrive=S:
IDPath=\\Game\NANCY
CifTreePath=\\Game\NANCY\ciftree\
HDVideoPath=\\Game\NANCY\HDVideo\
CDVideoPath=\\Game\NANCY\CDVideo\
HDSoundPath=\\Game\NANCY\HDSound\
CDSoundPath=\\Game\NANCY\CDSound\
LoadSavePath=\\Game\NANCY\Save\

где S:\Game\NANCY={app}

Всего записей: 38 | Зарегистр. 05-02-2008 | Отправлено: 21:59 26-02-2008
serg_aka_lain

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sandy Ann
 
если ".ini" без секций то так
 
procedure CurStepChanged(CurStep: TSetupStep);
begin
 If CurStep= ssPostInstall then
 begin
  SaveStringToFile(ExpandConstant('{app}') + '\file.ini', 'CDDrive1=S:' + #13#10, true);
  SaveStringToFile(ExpandConstant('{app}') + '\file.ini', 'CDDrive2=S:' + #13#10, true);
  SaveStringToFile(ExpandConstant('{app}') + '\file.ini', 'CDDrive3=S:' + #13#10, true);
  SaveStringToFile(ExpandConstant('{app}') + '\file.ini', 'HDDrive=S:' + #13#10, true);
  SaveStringToFile(ExpandConstant('{app}') + '\file.ini', 'IDPath=' + ExpandConstant('{app}') + #13#10, true);
  SaveStringToFile(ExpandConstant('{app}') + '\file.ini', 'CifTreePath=' + ExpandConstant('{app}') + '\ciftree\' + #13#10, true);
  SaveStringToFile(ExpandConstant('{app}') + '\file.ini', 'HDVideoPath=' + ExpandConstant('{app}') + '\HDVideo\' + #13#10, true);
  SaveStringToFile(ExpandConstant('{app}') + '\file.ini', 'CDVideoPath=' + ExpandConstant('{app}') + '\CDVideo\' + #13#10, true);
  SaveStringToFile(ExpandConstant('{app}') + '\file.ini', 'HDSoundPath=' + ExpandConstant('{app}') + '\HDSound\' + #13#10, true);
  SaveStringToFile(ExpandConstant('{app}') + '\file.ini', 'CDSoundPath=' + ExpandConstant('{app}') + '\CDSound\' + #13#10, true);
  SaveStringToFile(ExpandConstant('{app}') + '\file.ini', 'LoadSavePath=' + ExpandConstant('{app}') + '\Save\' + #13#10, true);
 end
end;

Всего записей: 340 | Зарегистр. 13-01-2007 | Отправлено: 23:04 26-02-2008
Sandy Ann

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
serg_aka_lain
Спасибо.
Код в секции [Nancy Data]. Полный вид INI
Все содержимое файла надо вбивать в код или вашим кодом реально добить нужные параметры в нужную секцию? И как в ваш код в секцию дописать? Извеняюсь что про нее сразу не сообразил  
PS: Не совсем понял эту строчку:
SaveStringToFile(ExpandConstant('{app}') + '\file.ini', 'CDDrive1=S:' + #13#10, true);  
Какая буква диска пропишется в параметр CDDrive ? Из переменной {app}?

Всего записей: 38 | Зарегистр. 05-02-2008 | Отправлено: 23:53 26-02-2008 | Исправлено: Sandy Ann, 00:02 27-02-2008
serg_aka_lain

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

Цитата:
SaveStringToFile(ExpandConstant('{app}') + '\file.ini', 'CDDrive1=S:' + #13#10, true);  
Какая буква диска пропишется в параметр CDDrive ? Из переменной {app}?

 
Нет, я не сразу увидел

Цитата:
где S:\Game\NANCY={app}
 тогда так
 
SaveStringToFile(ExpandConstant('{app}') + '\file.ini', 'CDDrive1=' + ExpandConstant('{app}')  + #13#10, true); - пропишется "{app}";
 
 

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

Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
КтоНить!!! из львов Инносетапики ну подскажите как при разбитом инсталляторе (при сообщении о смени диска) выполнить действие1, а при вставке ПРОСЯЕМОГО действие2
Очень надо.....

Всего записей: 466 | Зарегистр. 31-10-2006 | Отправлено: 05:44 27-02-2008
elapse



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
GRom V, в Inno Setup нельзя изменять действия, связанные с NewDiskForm - секция [Code] этого не поддерживает / не позволяет. Единственное (или нет?) решение -  попытаться перекомпилить исходники.

Всего записей: 95 | Зарегистр. 23-02-2008 | Отправлено: 09:46 27-02-2008
GRom V

Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
elapse
Блин......жаль
Спасибочки

Всего записей: 466 | Зарегистр. 31-10-2006 | Отправлено: 14:29 27-02-2008
Diawer

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
У меня изображение находиться в левом-вехнем углу, подскажите как разместить
его под ProgressBar`ом, и проверьте пожалуйста правильность кода, нет ли чего лишнего.  
 
[Code]
type
TProc = procedure(HandleW, msg, idEvent, TimeSys: LongWord);
 
var
TimerID: LongWord;
iCurr: Integer;
SlideImage: TBitmapImage;
 
function WrapTimerProc(callback:TProc; paramcount:integer):longword;
external 'wrapcallback@files:InnoCallback.dll stdcall';
 
function SetTimer(hWnd: LongWord; nIDEvent, uElapse: LongWord; lpTimerFunc: LongWord): LongWord;
external 'SetTimer@user32.dll stdcall';
 
function KillTimer(hWnd: LongWord; nIDEvent: LongWord): LongWord;
external 'KillTimer@user32.dll stdcall';
 
function PercentProgress(): Integer;
begin
with WizardForm.ProgressGauge do
Result := (Position-Min) / ((Max - Min) / 100);
end;
 
procedure OnTimer(HandleW, msg, idEvent, TimeSys: LongWord);
begin
if (PercentProgress > 30) and (PercentProgress < 50) and (SlideImage.Tag <> 1) then
begin
SlideImage.Bitmap.LoadFromFile(ExpandConstant('{src}\Image_2.bmp'));
SlideImage.Tag := 1;
end
else
if (PercentProgress > 50) and (PercentProgress < 80) and (SlideImage.Tag <> 2) then
begin
SlideImage.Bitmap.LoadFromFile(ExpandConstant('{src}\Image_3.bmp'));
SlideImage.Tag := 2;
end;
end;
 
procedure CurPageChanged(CurPageID: Integer);
var
pfunc: LongWord;
begin
if CurPageID = wpInstalling then
begin
pfunc := WrapTimerProc(@OnTimer, 4);
TimerID := SetTimer(0, 0, 100, pfunc);
 
WizardForm.Center;
 
SlideImage := TBitmapImage.Create(WizardForm);
SlideImage.Top := WizardForm.Bevel1.Top + WizardForm.Bevel1.Height;
SlideImage.Width := ScaleX(400);
SlideImage.Height := ScaleY(150);
SlideImage.Stretch := True;
SlideImage.Bitmap.LoadFromFile(ExpandConstant('{src}\Image_1.bmp'));
SlideImage.Parent := WizardForm.InnerPage;
end;
 
if (CurPageID > wpInstalling) and (CurPageID < wpFinished) then WizardForm.InnerNoteBook.Show;
 
if (CurPageID > wpInstalling) and (iCurr = 0) then
begin
 
WizardForm.Center;
 
SlideImage.Hide;
WizardForm.ProgressGauge.Hide;
 
iCurr := 1;
 
KillTimer(0, TimerID);
end;
end;
 
procedure DeinitializeSetup();
begin
KillTimer(0, TimerID);
end;

Всего записей: 180 | Зарегистр. 08-05-2007 | Отправлено: 20:34 27-02-2008
Sandy Ann

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
serg_aka_lain
Извеняйте, не катит код. Получается что параметры во всех ключах это содержимое переменной {app}. А мне надо разбить переменную на две части. Как на коде:

Код:
[Nancy Data]
HDDrive=S:  
IDPath=\\Game\NANCY  

При возможном значении переменной {app}=S:\Game\NANCY
Если пользователь сменит директорию установки{app}, допустим, на X:\Soft\Game, то в ini должно быть:
Код:
[Nancy Data]
HDDrive=X:  
IDPath=\\Soft\Game

Идеальным по-моему мнению был бы вариант разбиения значения переменной {app} еще на две переменные {app1} и {app2} с последующей подстановкой переменных в INI-секцию по типу:

Код:
[Code]
function app1(Param: String): String;
begin
  код вычисления, мне не известный
  Result := первые 2 знака из значения переменной {app}
end;
 
function app2(Param: String): String;
begin
  код вычисления, мне не известный
  Result := значение переменной {app} без первых двух знаков
end;
 
[INI]
FileName: "{app}\Game.ini"; Section: "Nancy Data"; Key: "HDDrive"; String: "\{code:app1}"
FileName: "{app}\Game.ini"; Section: "Nancy Data"; Key: "IDPath"; String: "\{code:app2}"

Реально такое нарисовать или есть более простые варианты? Заранее спасибо

Всего записей: 38 | Зарегистр. 05-02-2008 | Отправлено: 20:38 27-02-2008 | Исправлено: Sandy Ann, 20:41 27-02-2008
elapse



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

Цитата:
код вычисления, мне не известный

Sandy Ann, "как мастер Йода говоришь ты" (с).
Подробнее
 
 
Добавлено:
Diawer, а чем Вам не угодил код, предложенный serg_aka_lain? Если не ошибаюсь, он скидывал Вам его в ПМ. К слову, скачал уже скомпанованный инсталл - всё соответствуют Вашим требованиям. Или я ошибаюсь?

Всего записей: 95 | Зарегистр. 23-02-2008 | Отправлено: 21:01 27-02-2008
Sandy Ann

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

Всего записей: 38 | Зарегистр. 05-02-2008 | Отправлено: 23:42 27-02-2008
Diawer

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
elapse
В нём смена изображения происходит по времени, для меня удобнее по процентам.

Всего записей: 180 | Зарегистр. 08-05-2007 | Отправлено: 05:45 28-02-2008
geranik



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я хочу сделать, чтобы при удалении проверялся ключ в реестре, и если его нет - то удалить ключи в реестре (другие). Если есть - не удалять.
Вот часть задумки:  
Подробнее...

Всего записей: 33 | Зарегистр. 26-11-2007 | Отправлено: 21:35 28-02-2008 | Исправлено: geranik, 21:40 28-02-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-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru