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

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

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Genri
Спасибо Огромное - очень помог!
 
Добавлено:
Как то я через батник и не допетрил....

Всего записей: 66 | Зарегистр. 11-01-2007 | Отправлено: 05:12 07-03-2007
Chuvakstepan



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Люди! Нужна ваша помощь
Код: (Не весь, конечно)

Цитата:
 
procedure ISSI_CurPageChanged(CurPageID: Integer);
begin
if CurPageID=1 then
 begin
  If WizardForm.FindComponent('NextButton') is TButton
 then
  TButton(WizardForm.FindComponent('NextButton')).Caption:='Начать Установку >>>';
  TButton(WizardForm.FindComponent('NextButton')).Width:=ScaleX(135);
  WizardForm.NextButton.Left:=WizardForm.ClientWidth - ScaleX(217 + 10);  //Отступ слева кнопки: Отмена.
  WizardForm.NextButton.Top:=WizardForm.ClientHeight - ScaleY(23 + 10); //Отступ сверху кнопки: Отмена.
  WizardForm.BackButton.Left:=WizardForm.ClientWidth - ScaleX(300 + 10);  //Отступ слева кнопки: Отмена.
  WizardForm.BackButton.Top:=WizardForm.ClientHeight - ScaleY(23 + 10); //Отступ сверху кнопки: Отмена.
  If WizardForm.FindComponent('CancelButton') is TButton
then
  TButton(WizardForm.FindComponent('CancelButton')).Caption:='Выход';
end;
begin
 if CurPageID=wpInstalling
then
begin
  WizardForm.MainPanel.Visible:=False;
  WizardForm.Bevel1.Visible:=False;
  WizardForm.Width:=ScaleX(395);
  WizardForm.Height:=ScaleY(142);
  WizardForm.Left:=ScaleX(MainForm.Width-420);
  WizardForm.Top:=ScaleY(MainForm.Height-170);
  WizardForm.InnerNotebook.Left:=ScaleX(10);
  WizardForm.InnerNotebook.Top:=ScaleY(10);
  WizardForm.InnerNotebook.Width:=ScaleX(370);
  WizardForm.StatusLabel.Left:=ScaleX(0);
  WizardForm.StatusLabel.Top:=ScaleY(0);
  WizardForm.StatusLabel.Width:=WizardForm.InnerNotebook.Width;
  WizardForm.FileNameLabel.Left:=ScaleX(0);
  WizardForm.FileNameLabel.Top:=ScaleY(20);
  WizardForm.FileNameLabel.Width:=WizardForm.InnerNotebook.Width;
  WizardForm.ProgressGauge.Top:=ScaleY(40);
  WizardForm.ProgressGauge.Width:=WizardForm.InnerNotebook.Width;
  WizardForm.CancelButton.Left:=ScaleX(154);
  WizardForm.CancelButton.Top:=ScaleY(80);
 end
if CurPageID=wpFinished
 then
  begin
  WizardForm.Width:=502;{Размер окна по горизонтали}
  WizardForm.Height:=392;{Размер окна по вертикали}
  WizardForm.Position:=poScreenCenter; {Возврат в исходное состояние}
 end
 begin
If CurPageID=wpPassword then
begin
SendMessage(WizardForm.NEXTBUTTON.Handle, 513, 0, 0)
SendMessage(WizardForm.NEXTBUTTON.Handle, 514, 0, 0)
end;
end;
end;
end;
 
procedure ISSI_InitializeWizard();
var
Name1: string;
PlayButton, PauseButton, StopButton: TButton;
Text: TNewStaticText;
Panel1: TPanel;
begin
//Вставляем наш пароль в поле ввода
WizardForm.PasswordEdit.Text := 'тunknown©®™а';
 
begin
WizardForm.Position := poScreenCenter;
WizardForm.CancelButton.BringToFront;
begin
 //Выносим кнопку "Отмена" на передний план
  WizardForm.CancelButton.BringToFront;
begin
Panel1 := TPanel.Create(WizardForm);
with Panel1 do
begin
PlayButton := TButton.Create(WizardForm);
PlayButton.Left := 10;
PlayButton.Top := WizardForm.ClientHeight - ScaleY(23 + 10);
PlayButton.Width := 30;
PlayButton.Caption := '>';
PlayButton.OnClick := @PlayButtonOnClick;
PlayButton.Parent := WizardForm;
PlayButton.Cursor := crHand;
PauseButton := TButton.Create(WizardForm);
PauseButton.Left := 45;
PauseButton.Top := WizardForm.ClientHeight - ScaleY(23 + 10);
PauseButton.Width:=30;
PauseButton.Caption := 'II';
PauseButton.OnClick := @PauseButtonOnClick;
PauseButton.Parent := WizardForm;
PauseButton.Cursor := crHand;
StopButton := TButton.Create(WizardForm);
StopButton.Left := 80;
StopButton.Top := WizardForm.ClientHeight - ScaleY(23 + 10);
StopButton.Width := 30;
StopButton.Caption := '[]';
StopButton.OnClick := @StopButtonOnClick;
StopButton.Parent := WizardForm;
StopButton.Cursor := crHand;
end;
 

 
Нужно чтобы три кнопки управления музыкой меняли свое расположение так же как форма процесса инсталляции (внизу справа, см. руководство). А то окошко инсталляции стало маленьким, и не видно кнопок, хотя они есть

Всего записей: 202 | Зарегистр. 29-01-2007 | Отправлено: 07:06 07-03-2007 | Исправлено: Chuvakstepan, 07:10 07-03-2007
maxdddca123

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

Цитата:
-- картинка отображаться не будет. ограничение TRichEdit. Во всяком случае, способа отобразить битмап в стандартном TRichEdit я не знаю.

Ясно, а есть какие нить другие способы ? Может например сделать пустую страничку, где эта картинка будет фоном. Это реально ?

Всего записей: 211 | Зарегистр. 14-12-2006 | Отправлено: 07:34 07-03-2007
Chanka

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Genri,
Пожалуйста можешь помочь мне с кнопочкой "сброс".

Всего записей: 208 | Зарегистр. 24-08-2006 | Отправлено: 08:40 07-03-2007
Genri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Chanka
Код:
 
[Setup]  
AppName=My Program  
AppVerName=My Program version 1.5  
DefaultDirName={pf}\My Program
 
[Files]  
Source: Files\*; DestDir: {app}
 
[Code]  
var  
  RestoreDir: TButton;
 
procedure ButtonOnClick(Sender: TObject);  
begin
  WizardForm.DirEdit.Text:= ExpandConstant('{pf}\My Program');
end;
 
procedure InitializeWizard();  
begin
  RestoreDir:= TButton.Create(WizardForm);
  RestoreDir.Width := WizardForm.DirBrowseButton.Width;
  RestoreDir.Height := WizardForm.DirBrowseButton.Height;
  RestoreDir.Top := WizardForm.DirBrowseButton.Top + RestoreDir.Height + ScaleX(10);
  RestoreDir.Left := WizardForm.DirBrowseButton.Left;
  RestoreDir.OnClick := @ButtonOnClick;
  RestoreDir.Parent := WizardForm.SelectDirPage;
  RestoreDir.Visible:= True;
  RestoreDir.Caption := 'Restore Path';
end;
 


Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 11:48 07-03-2007
Chanka

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Genri                                                                                                                                                                               Спасибо. То шо нужно. Еще один вопросик и будем праздновать
Можно ли сделать чтобы в этой конструкции удаления сейв файлов происходило из значения реестра?
Просто многие игры кидают свои сёйвы то в мои документы то еще куда.
Ну например: "SOFTWARE\My Company\My Program"; ValueName: "SavedGames"; ValueType: String; ValueData: "{userdocs}"; Flags: uninsdeletekey
 
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);  
begin  
if CurUninstallStep=usDone then  
begin  
if DirExists(ExpandConstant('{app}\profiles')) then  
begin  
if MsgBox('Удалить сохраненные игры?',mbconfirmation, mb_yesno) = IDYES then  
begin  
DelTree(ExpandConstant('{app}'), True, True, True);  
MsgBox('сообщение...', mbinformation, mb_ok);  
end;  
end;  
end;  
end;

Всего записей: 208 | Зарегистр. 24-08-2006 | Отправлено: 15:01 07-03-2007 | Исправлено: Chanka, 15:04 07-03-2007
Genri

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

Цитата:
а можно ли сабжем  
сменять иконку у папки (в которую инсталлируется прога)


Код:
 
[Setup]  
AppName=My Program  
AppVerName=My Program version 1.5  
DefaultDirName={pf}\My Program
 
[Dirs]
Name: {app}; Attribs: system
 
[Files]  
Source: Files\*; DestDir: {app}
 
[INI]
Filename: {app}\Desktop.ini; Section: ".ShellClassInfo"; Key: "IconFile"; String: "%SystemRoot%\system32\SHELL32.dll"
Filename: {app}\Desktop.ini; Section: ".ShellClassInfo"; Key: "IconIndex"; String: "27"
 


Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 15:20 07-03-2007
boss911



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

Цитата:
Но обрати внимание, что после изменения иконки штатным образом, у папки меняется атрибуты (она становится системной).

Действительно, так и есть, но коеч-то непонятно, после того, как я в папку кинул ico и ini и сделал атрибут системным с помощью TC, то папка приняла вид иконки! Но, что самое интерестное, то, что в самом ТС данная папка скрылась (отключин показ скрытых и системных файлов\папок), но в винде она показывается, а вот папка, где иконка ставилась штатным виндовым способ, в ТС она видна. Это особенность ТС, почему он не показывает системную папку, когда был установлен в ручную атрибут системный, а со штатным способом - все нормально?
 
Прошу прощения у админов за маленький оффтоп, а Genri большое спасибо, так как я бы без него и недодумался обратить внимания на изменения атрибутов!
 
 
Добавлено:
 
Чуть-чуть покопавшись, я выяснил, через FAR, что папка с иконкой, поставлена штатным способом, обретает НЕ "системный" атрибут, а "только для чтения", надо было бы мне сразу все проверить не ТC, а FAR-ом!

Всего записей: 3567 | Зарегистр. 29-01-2005 | Отправлено: 18:45 07-03-2007 | Исправлено: boss911, 18:57 07-03-2007
Nagual



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
хай, мужики, такой вопрос, необходимо создать инсталляху, где исходные файлы должны браться по пути из реестра, то есть что то типа {reg:HKLM\SOFTWARE\xxx\xxx\4.0,Folder}\file1  и тд
и после установки проиграть wav файл, расположенный в {reg:HKLM\SOFTWARE\xxx\xxx\4.0,Folder}\file1.wav
Возможно лит это?

Всего записей: 528 | Зарегистр. 06-01-2006 | Отправлено: 01:14 08-03-2007
MKN



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

Всего записей: 4658 | Зарегистр. 21-04-2005 | Отправлено: 10:10 08-03-2007
NightW0lf



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

Цитата:
Поделитесь пожалуйста русификатором для ScriptMaker (ссылки в шапке не рабочие...)

Все можешь качать теперь из шапки я ее обновил!
P.S.: пароль как и был - ruboard

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

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

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 11:51 08-03-2007
Nagual



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

Всего записей: 528 | Зарегистр. 06-01-2006 | Отправлено: 11:55 08-03-2007 | Исправлено: Nagual, 12:14 08-03-2007
Genri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Nagual -- т.е. выходит задачи две:
1. На этапе компиляции, прочитать из реестра на машине, где происходит компиляция, пути и имена файлов и эти файлы включить в дистрибутив.
2. При установке, прочитать из реестра на машине, где происходит установка, пути и имена файлов и установить файлы из дистрибутива по найденным путям.
 
Если так, то вопросы:
 
1. На всех машинах, в реестре общая часть для поиска HKLM\SOFTWARE\xxx\xxx\4.0 ?
2. Кол-во файлов и их имена неизвестны ?
3. Что делать, если при компиляции, путь найден, а файла нет ? Игнорировать или выдавать ошибку ?
4. Что делать если в дистрибутив вошло больше файлов, чем найдено путей на машине пользователя ? Остальные игнорировать или выдавать ошибку ?
5. Что делать, если файлы на машине пользователя более новые, чем в дистрибутиве ?

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



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Genri
1. да, пути к программе, записанные в реестре на всех машинах -- константа
2. файлов 3, имена известны, одинаковы на всех машинах и названия их не меняются, допустим пусть будут file1, file2 и file3
3. такого в данном случае быть не может, лучше игнорировать и записать файл по указанному пути (для надежности)
4. такого не может быть, количесво файлов жестко определено, их 3, раписывается все, как я понял, так
{reg:HKLM\SOFTWARE\xxx\xxx\4.0,Folder}\file1
{reg:HKLM\SOFTWARE\xxx\xxx\4.0,Folder}\file2
{reg:HKLM\SOFTWARE\xxx\xxx\4.0,Folder}\file3
5. такого тоже не может быть, потому что обновления происходят на серваке в первую очередь, но если все таки это случилось, тогда лучше оставить все как есть, то есть не заменять более новые файлы более старыми
спс

Всего записей: 528 | Зарегистр. 06-01-2006 | Отправлено: 12:35 08-03-2007 | Исправлено: Nagual, 12:40 08-03-2007
Chuvakstepan



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
А мне никто не сможет помочь? Смотреть в начале страницы

Всего записей: 202 | Зарегистр. 29-01-2007 | Отправлено: 12:41 08-03-2007 | Исправлено: Chuvakstepan, 12:49 08-03-2007
NightW0lf



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

Цитата:
Нужно чтобы три кнопки управления музыкой меняли свое расположение так же как форма процесса инсталляции (внизу справа, см. руководство). А то окошко инсталляции стало маленьким, и не видно кнопок, хотя они есть

У меня можно сказать так получилось [но очень коряво - но суть есть], НО много всяких косяков. Например - после завершения установки [страница wpFinished] окно мастера установки должно вернуться на место а именно в центр и вернуть свой исходный размер - но почемуто не получается.
 
Вот мои на роботки
 
Если кто может помогите разобраться с этим еодом.

Всего записей: 479 | Зарегистр. 08-11-2006 | Отправлено: 14:18 08-03-2007
Chuvakstepan



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
NightW0lf
Млин, трабла. Я кусок из твоего кода беру. Он говорит unknown identifer PageDescription
 
Но посмотри лучше мой код, там реализация лучше, красивей. Только надо научиться менять расположение кнопок вместе с формой
 
Может лучше перепутать Инициализ Визард и КурПэйджчанчед
 
Добавлено:
Там (в моём коде) нет кнопок play и уже всё проверенно

Всего записей: 202 | Зарегистр. 29-01-2007 | Отправлено: 15:11 08-03-2007 | Исправлено: Chuvakstepan, 15:14 08-03-2007
Chanka

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

Всего записей: 208 | Зарегистр. 24-08-2006 | Отправлено: 17:02 08-03-2007
san007

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Может кто знает, как реализовать в секции Code 2 разные ссылки (одна над другой) в левом нижнем углу инсталятора и чтобы они были разного цвета.

Всего записей: 112 | Зарегистр. 13-01-2007 | Отправлено: 22:46 08-03-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.Board
© Ru.Board 2000-2020

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru