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

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

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

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

   

Widok



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

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



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



 
Последний релиз: 5.2.0 [21 сентября 2007 года]
Скачать | зеркало  
(как сказано в описании изменений, добавлена поддержка новых директив 5.2.0)
 
Русификатор
Скачать | зеркало


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


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

Последний релиз: 1.0.2.11 [7 Августа 2007 года]
Скачать | обновление | Изменения
Примечание: обновление ставится только на Inno Setup Quickstartpack 5.1.13.
 
Примечание для всех участников
 
Длинные куски кода помещайте под тегом [more], дабы дать возможность знатокам Inno Setup прочитать сам вопрос, а не пролистывать бесконечно длинные листинги скриптов в посте.

Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 18:01 23-04-2007 | Исправлено: Nekt, 00:33 25-09-2007
Sampron

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
maxdddca123
Сорри незаметил что у тебя TPanel я думал TLabel.
 
Добавлено:
Так создай новый текст на панели.

Всего записей: 563 | Зарегистр. 06-01-2007 | Отправлено: 16:41 27-05-2007
maxdddca123

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Sampron
Типа ещё одну панель что ли ? Или как ?

Всего записей: 211 | Зарегистр. 14-12-2006 | Отправлено: 16:54 27-05-2007
EagleSH

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sampron как убрать страницу с доп задачами?
 
а сделал:
 
  if CurPageID=wpSelectTasks then
begin
    WizardForm.NextButton.OnClick(WizardForm.NextButton);
end
 
вот токо назад не работает кнопка в таком случае

Всего записей: 318 | Зарегистр. 20-12-2005 | Отправлено: 17:00 27-05-2007 | Исправлено: EagleSH, 17:07 27-05-2007
Sampron

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

Цитата:
Типа ещё одну панель что ли ? Или как ?

Пример:
 
[Setup]
AppName=AppName
AppVerName=AppVerName
DefaultDirName={pf}\AppName
 
[Code]
var
  Panel: TPanel;
  Text: TNewStaticText;
 
procedure InitializeWizard();
begin
  Panel:=TPanel.Create(WizardForm)
  Panel.Left:=3
  Panel.Top:=315
  Panel.Width:=245
  Panel.Height:=44
  Panel.BevelInner:=bvLowered
  Panel.Color:=12639424
  Panel.Parent:=WizardForm
 
  Text:=TNewStaticText.Create(WizardForm)
  Text.Left:=2
  Text.Top:=2
  Text.Width:=242
  Text.Height:=38
  Text.AutoSize:=False
  Text.WordWrap:=True
  Text.Caption:='мда действительно на панели не переносится но как вариант можно сделать так'
  Text.Parent:=Panel
end;
 
Добавлено:
EagleSH

Цитата:
как убрать страницу с доп задачами?

А ты не используй доп задачи, и не будет страницы.
 
Добавлено:
NightW0lf

Цитата:
Как сделать так чтобы изменить размер и текст кнопки "Далее" на одной странице и это изменение не влияло на все другие страницы.

Примерно так:
[Code]
procedure CurPageChanged(CurPageID: Integer);
begin
  if CurPageID = wpWelcome then
  begin
    WizardForm.NextButton.Width:=75
    WizardForm.NextButton.Left:=327
  end
  if CurPageID = wpSelectDir then
  begin
    WizardForm.BackButton.Left:=180
    WizardForm.NextButton.Width:=150
    WizardForm.NextButton.Left:=255
    WizardForm.NextButton.Caption:='Инициализировать дискету'
  end
  if CurPageID = wpReady then
  begin
    WizardForm.NextButton.Width:=75
    WizardForm.NextButton.Left:=327
    WizardForm.BackButton.Left:=252
  end
end;

Всего записей: 563 | Зарегистр. 06-01-2007 | Отправлено: 17:25 27-05-2007
Victor_Dobrov



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Проверка системных требований, исправление согласно указанию Genri

Всего записей: 742 | Зарегистр. 27-09-2005 | Отправлено: 18:53 27-05-2007
NightW0lf



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

Цитата:
Примерно так:

Спасибо!

Всего записей: 479 | Зарегистр. 08-11-2006 | Отправлено: 19:04 27-05-2007
ZavadS



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как можно заменить надпись клавиши 'OK' на 'Далее', каторое зявляеться в сообщении, в этому коду.

Цитата:
function InitializeSetup(): Boolean;
begin
If RunTask('oodcnt.exe', false) then
begin
  if MsgBox('Программа установки русификатора обнаружила, что программа "O&O Defrag Professional Edition",'#13'запушена в данный момент. Рекомендуется закрыть программу перед тем, как продлить.'#13#13
    'Нажмите «Далее», программа установки закроет и не сохранит измененные настройки в программе.'#13#13
    'Нажмите «Отмена», чтобы выйти из программы установки русификатора.', mbInformation, MB_OkCancel) = idOk then
begin
  KillTask('oodcnt.exe');
  Result := True;
  end else
  Exit;
  end;
  Result := True;

 
А также можно ли вставить текс названия программы из [Setup] AppName (что-то подобное на это)

Цитата:
  if MsgBox('Программа установки русификатора обнаружила, что программа '+ExpandConstant('{AppName}')+','#13'запушена в данный момент. Рекомендуется закрыть программу перед тем, как продлить

но так оно не работает
 
 

Всего записей: 69 | Зарегистр. 04-01-2007 | Отправлено: 20:32 27-05-2007
DuhaLab



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Genri
Да первое, про это знаю, вот и спрашиваю, есть ли другой способ сделать резервную копию...

Всего записей: 48 | Зарегистр. 26-12-2006 | Отправлено: 20:35 27-05-2007
maxdddca123

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Sampron
Как сделать неактивной кнопку далее на createcustompage ?
WizardForm.NextButton.Enabled:=false;
не работает почему то

Всего записей: 211 | Зарегистр. 14-12-2006 | Отправлено: 23:28 27-05-2007
Sampron

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

Цитата:
Как сделать неактивной кнопку далее на createcustompage  

Сам незнаю.

Всего записей: 563 | Зарегистр. 06-01-2007 | Отправлено: 00:18 28-05-2007
maxdddca123

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Ааа дожили. Genri ну хоть ты помоги плиз !

Всего записей: 211 | Зарегистр. 14-12-2006 | Отправлено: 06:59 28-05-2007
Genri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DuhaLab -- способов десятки. Например, как я уже говорил, в этом варианте можно передавать имя файла как параметр:
Код:
 
[Setup]
AppName=My Program
AppVerName=My Program ver.1.5
DefaultDirName={pf}\My Program
 
[INI]
Filename: "{app}\MyProg.ini"; Section: "InstallSettings"; Flags: uninsdeletesection; BeforeInstall: CreateBackup('{app}\MyProg.ini')
Filename: "{app}\MyProg.ini"; Section: "InstallSettings"; Key: "InstallPath"; String: "{app}"
 

Код:
 
procedure CreateBackup(filename: string);
var
  srcFile, destFile: string;
  basePath, shortPath: string;
begin
  basePath:= ExpandConstant('{app}');
  srcFile:= ExpandConstant(filename);
  shortPath:= srcFile;
  StringChangeEx(shortPath, basePath, '', True);
  destFile:= ExpandConstant('{app}\Backup') + shortPath;
  ForceDirectories(ExtractFilePath(destFile));
  FileCopy(PChar(srcFile), PChar(destFile), False);
end;  

 

maxdddca123
Цитата:
Как сделать неактивной кнопку далее на createcustompage ?
 

Код:
 
[Setup]
AppName=My Program
AppVerName=My Program ver.1.5
DefaultDirName={pf}\My Program
 
[Code]
var
Page: TWizardPage;
 
procedure InitializeWizard();
begin
  Page := CreateCustomPage(wpWelcome, 'Custom wizard page', 'Disable Next button');
end;
 
procedure CurPageChanged(CurPageID: Integer);
begin
  if  CurPageID = Page.ID then
    WizardForm.NextButton.Enabled:=false;
end;  

 
Добавлено:
NightW0lf
Цитата:
Как сделать так чтобы изменить размер и текст кнопки "Далее" на одной странице и это изменение не влияло на все другие страницы.
-- никак. кнопки Далее, Назад и Отмена находятся на WizardForm, а не на странице. Другими словами кнопка Далее всего одна.
Максимум что можно сделать, это изменить размер и текст при переходе на одну страницу и восстановить размер и текст при переходе на следующую или предыдущую.

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 10:09 28-05-2007 | Исправлено: Genri, 10:19 28-05-2007
DuhaLab



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

Всего записей: 48 | Зарегистр. 26-12-2006 | Отправлено: 10:37 28-05-2007
Genri

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

Код:
 
[Setup]
AppName=My Program
AppVerName=My Program ver.1.5
DefaultDirName={pf}\My Program
 
[Tasks]
Name: desktopicon; Description: "Create a &desktop icon"; GroupDescription: "Additional icons:"
Name: desktopicon\common; Description: "For all users"; GroupDescription: "Additional icons:"; Flags: exclusive
Name: desktopicon\user; Description: "For the current user only"; GroupDescription: "Additional icons:"; Flags: exclusive unchecked
Name: quicklaunchicon; Description: "Create a &Quick Launch icon"; GroupDescription: "Additional icons:"; Flags: unchecked
Name: associate; Description: "&Associate files"; GroupDescription: "Other tasks:"; Flags: unchecked
 
[Code]
var
  Page: TInputOptionWizardPage;
  IsRegisteredUser: Boolean;
 
procedure InitializeWizard();
begin
  Page := CreateInputOptionPage(wpSelectTasks,
    'License Information', 'Are you a registered user?',
    'If you are a registered user, please check the box below, then click Next.',
     False, False);
 
  Page.Add('I am a registered user');
  Page.Values[0] := False;
end;  


Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 11:30 28-05-2007
maxdddca123

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Genri
В выложенном тобой выше примере аналоге GetSectionName в строке  
if IniStrings[i][1] = '[' then
на каком то шаге выдаётся ошибка Out of string range (не с самого начала тоесть). Не подскажешь что надо проверить в первую очередь ? Вообще что это означает ? Если словами сказать.

Всего записей: 211 | Зарегистр. 14-12-2006 | Отправлено: 13:37 28-05-2007 | Исправлено: maxdddca123, 13:59 28-05-2007
Genri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
maxdddca123 -- в указанном примере, IniStrings: TArrayOfString (т.е. массив строк). Каждая строка, в свою очередь, массив символов.
Например:
IniStrings:= ['abc','def'];
... тогда:
IniStrings[0] = 'abc' (т.е. первая строка)
IniStrings[1] = 'def' (т.е. вторая строка)
IniStrings[0][1] = 'a' (т.е. первый символ перовй строки)
IniStrings[1][1] = 'd' (т.е. первый символ второй строки)
 
Обрати внимание, что элементы массива нумеруются с 0, а символы в строке с 1.
Либо ты пытаешься обработать пустую строку, либо i у тебя принимает значение больше, чем кол-во строк - 1 (если строк две , то доступны только два элемента: IniStrings[0] и IniStrings[1])  
 
ЗЫ. на будущее, указывай хотя бы страницу, где находится пример.

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 14:37 28-05-2007
maxdddca123

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

Всего записей: 211 | Зарегистр. 14-12-2006 | Отправлено: 14:52 28-05-2007
NightW0lf



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Genri
А возможно ли сделать так чтобы отмеченные данные на этой странице вносились на страницу wpReady?

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

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

Код:
 
var
  Page: TInputOptionWizardPage;
 
procedure InitializeWizard();
begin
  Page := CreateInputOptionPage(wpSelectTasks,
    'License Information', 'Are you a registered user?',
    'If you are a registered user, please check the box below, then click Next.',
     False, False);
 
  Page.Add('I am a registered user');
  Page.Add('Install Acrobat Reader');
  Page.Values[0] := False;
end;
 
procedure CurPageChanged(CurPageID: Integer);
begin
  if CurPageID = wpReady then
    begin
      if Page.Values[0] then
        WizardForm.ReadyMemo.Lines.Add('Confirm registration');
      if Page.Values[1] then
        WizardForm.ReadyMemo.Lines.Add('Install Acrobat Reader');
    end;
end;  

 
maxdddca123
Цитата:
Да у меня есть пустая строка. Они там периодически идут. Как с ними бороться ?
-- проверять на пустые строки Например так:
if (IniStrings[i] <> '') and (IniStrings[i][1] = '[') then ......

Всего записей: 872 | Зарегистр. 06-09-2003 | Отправлено: 15:27 28-05-2007
NightW0lf



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Genri
А можно еще чтоб на этой новой странице можно было сделать так то что омечается переносилост на страницу wpReady с названием группы?
Пример для новой страницы на странице wpReady:

Всего записей: 479 | Зарегистр. 08-11-2006 | Отправлено: 15:48 28-05-2007 | Исправлено: NightW0lf, 15:48 28-05-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

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


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru