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

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

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

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

   

Widok



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

Это мощное средство для создания установочных пакетов (дистрибутивов) программ. Поддерживается шифрование, установка пароля, различные задачи по завершении установки. Можно создавать свои страницы, используя Inno Setup Form Designer.
По сравнению с NSIS (основной конкурент на бесплатной основе) проще в настройке, имеет более понятную структуру скрипта.  
 
Последний релиз: 5.2.3 [10.03.2008]
История версий | скачать | все сборки || Скачать Preprocessor | все сборки
 
Русификатор от NightW0lf для версии 5.2.0
Скачать | зеркало
 
Русская справка к версиям 5.0.x, автор перевода BagIra
Скачать | зеркало || cкачать в .chm формате
 
Руководство по расширенным возможностям 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-файл в фоновом окне. Компактный режим установки. Деинсталляция неучтённых файлов. Экран справки/скриншота. Медиаплеер и многое другое...
 
Примечание: Если необходимо использовать метод проверки внешнего файла через сумму MD5 (который описан в 5 версии руководства от Kindly) для запуска инсталлятора, то понадобится калькулятор хеша MD5, калькулятор сумм MD5, SHA-256, CRC32. Если требуется узнать, какие ключи реестра меняет та или иная программа, используйте RegShot. Чтобы растянуть фоновый рисунок на весь экран, в версии Inno Setup 5.1.10 и выше используйте этот код.

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


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

Простой мастер создания скрипта для установки одной или нескольких игр. В инсталлятор можно встроить музыку, слайдшоу и фоновый рисунок. Для специалистов созданный скрипт, возможно, будет неплохой заготовкой для дальнейшей модернизации.
 

Прежнее название ScriptMaker. Удобная оболочка для облегчения написания скриптов установки для Inno Setup. Обладает некоторыми полезными функциями, которых нет ни у самого Inno Setup, ни у ISTool.
 
Последний релиз: 1.0.3.1 [23.03.2008]
Скачать | обновить (нужен QuickStartPack 5.2.3)

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

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

Объёмные скрипты или части кода заключайте в тег more, чтобы ваш вопрос в сообщении не затерялся среди множества строк прилагаемого скрипта.

Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 18:16 17-06-2008 | Исправлено: equis, 17:51 06-12-2008
noiseless

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cryzer
А так если
 
var  
  ItemIndex: Integer;  
 
procedure InitializeWizard();  
 begin  
  ItemIndex := WizardForm.TypesCombo.ItemIndex;  
 
 ...  
 with WizardForm do begin  
   Position:=poScreenCenter  
   WizardForm.TypesCombo.ItemIndex := ItemIndex;  
   ClientWidth:=700  
   ClientHeight:=480  
 ... // и т.д.

Всего записей: 182 | Зарегистр. 06-02-2006 | Отправлено: 17:32 22-07-2008
ZheKA767



Newbie
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Народ подскажите как в инсталлятор внедрить серийный номер и поле ввода было разбито на ячейки как в InstallShield.
И как ещё добавить в окно инсталлятора URL адрес как в инсталляторах от ZoneOfGames

Всего записей: 19 | Зарегистр. 04-07-2008 | Отправлено: 17:42 22-07-2008
Artem_Butenko



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте ценители Inno Setup. Я встречал множество решений организации слайд-шоу. Но, в большинстве случаев, использовались изображения в формате .bmp. Подскажите пожалуйста, может есть готовое решение организации слайд-шоу по процентам прогресс-бара, в котором используются изображения в формате .jpeg. И немного сторонний вопрос: можно ли в Inno Setup реализовать "дробный" прогресс-бар, аналогичный InstallShield. Буду очень признателен за любую помощь!
 
Добавлено:
Здравствуйте ценители Inno Setup. Я встречал множество решений организации слайд-шоу. Но, в большинстве случаев, использовались изображения в формате .bmp. Подскажите пожалуйста, может есть готовое решение организации слайд-шоу по процентам прогресс-бара, в котором используются изображения в формате .jpeg. И немного сторонний вопрос: можно ли в Inno Setup реализовать "дробный" прогресс-бар, аналогичный InstallShield. Буду очень признателен за любую помощь!

Всего записей: 711 | Зарегистр. 19-02-2008 | Отправлено: 17:57 22-07-2008
Diawer

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Заинтересовала тема звуков для кнопок, как добавить ещё для двух кнопок “Обзор – папок и пуск”  

Всего записей: 180 | Зарегистр. 08-05-2007 | Отправлено: 18:28 22-07-2008
boss911



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

Код:
[Tasks]
Name: MyTask; Description: {cm:My_Task}; Flags: unchecked

Как сделать, чтобы данный чекбокс был заблокирован при повторной установки одного и того же приложения?

Всего записей: 3699 | Зарегистр. 29-01-2005 | Отправлено: 18:55 22-07-2008
putes

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как использовать два и более КОДОВ в одной инсталляции, подскажите плиз, или направьте в изучающее русло где описано на примерах как  совладать с данным трюком

Всего записей: 125 | Зарегистр. 06-02-2005 | Отправлено: 20:54 22-07-2008
ZheKA767



Newbie
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Diawer
 
Для Обзора папок
function DirBrowseButtonClick(CurPageID: Integer): Boolean;
begin
  sndPlaySound(ExpandConstant('{tmp}\click.wav'), $0001);
  Result := True;
end;
 
Для пуска
function GroupBrowseButtonClick(CurPageID: Integer): Boolean;
begin
  sndPlaySound(ExpandConstant('{tmp}\click.wav'), $0001);
  Result := True;
end;

Всего записей: 19 | Зарегистр. 04-07-2008 | Отправлено: 22:34 22-07-2008
ComradG



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

Цитата:
Как использовать два и более КОДОВ

Бери здесь http://victor-dobrov.narod.ru/InnoSetupFAQ_ru-board.chm

 
 
Добавлено:
Кстати, нашел у себя в загашниках скрипт:  
[Setup]  
AppName=Drive Checked  
AppVerName=Drive Checked  
DefaultDirName={pf}\Drive Checked  
 
[Languages]  
Name: "ru"; MessagesFile: "compiler:Languages\Russian.isl"  
 
[Messages]  
ru.SelectDirBrowseLabel=Нажмите "Далее", чтобы продолжить. Для установки на другой диск, выберите из списка.  
 
[_Code]  
var  
cbDrive: TComboBox;  
DrvLetters: array of string;  
FreeSpaceLabel: TLabel;  
 
function GetDriveType(lpDisk: string): integer;  
external 'GetDriveTypeA@kernel32.dll stdcall';  
 
function GetLogicalDriveStrings(nLenDrives: LongInt; lpDrives: string): integer;  
external 'GetLogicalDriveStringsA@kernel32.dll stdcall';  
 
const  
DRIVE_UNKNOWN=0;  
DRIVE_NO_ROOT_DIR=1;  
DRIVE_REMOVABLE=2;  
DRIVE_FIXED=3;  
DRIVE_REMOTE=4;  
DRIVE_CDROM=5;  
DRIVE_RAMDISK=6;  
 
function DriveTypeString(dtype: integer): string;  
begin  
case dtype of  
DRIVE_NO_ROOT_DIR: Result:='Неверный путь';  
DRIVE_REMOVABLE: Result:='Съемный';  
DRIVE_FIXED: Result:='';  
DRIVE_REMOTE: Result:='Сетевой';  
DRIVE_CDROM: Result:='CD-ROM';  
DRIVE_RAMDISK: Result:='Ram диск';  
else  
Result:='Неизвестный';  
end;  
end;  
 
procedure cbDriveOnClick(Sender: TObject);  
begin  
WizardForm.DirEdit.Text:=DrvLetters[cbDrive.ItemIndex]+'Program Files\Disk Checked';  
end;  
 
procedure FillCombo();  
var  
n: integer;  
drivesletters: string; lenletters: integer;  
drive: string;  
disktype, posnull: integer;  
sd: string;  
begin  
sd:=UpperCase(ExpandConstant('{sd}'));  
drivesletters:=StringOfChar(' ', 64);  
lenletters:=GetLogicalDriveStrings(63, drivesletters);  
SetLength(drivesletters, lenletters);  
drive:='';  
n:=0;  
while ((Length(drivesletters) > 0)) do  
begin  
posnull:=Pos(#0, drivesletters);  
if posnull > 0 then  
begin  
drive:=UpperCase(Copy(drivesletters, 1, posnull-1));  
disktype:=GetDriveType(drive);  
if (not(disktype=DRIVE_REMOVABLE)) then  
begin  
cbDrive.Items.Add(drive+DriveTypeString(disktype))  
SetArrayLength(DrvLetters, N+1);  
DrvLetters[n]:=drive;  
if (Copy(drive, 1, 2)=sd) then cbDrive.ItemIndex:=n;  
n:=n+1;  
end  
drivesletters:=Copy(drivesletters, posnull+1, Length(drivesletters));  
end  
end;  
cbDriveOnClick(cbDrive);  
end;  
 
procedure GetFreeSpaceCaption(Sender: TObject);  
var  
Path: string;  
FreeMB, TotalMB: cardinal;  
begin  
Path:=ExtractFileDrive(WizardForm.DirEdit.Text);  
GetSpaceOnDisk(Path, True, FreeMB, TotalMB);  
if FreeMB > 1024 then  
FreeSpaceLabel.Caption:='Свободно на диске:' + FloatToStr(round(FreeMB/1024*100)/100) + ' GB'  
else  
FreeSpaceLabel.Caption:='Свободно на диске:' + IntToStr(FreeMB) + ' MB'  
end;  
 
procedure InitializeWizard();  
begin  
cbDrive:=TComboBox.Create(WizardForm.SelectDirPage);  
FreeSpaceLabel:=TLabel.Create(WizardForm);  
with cbDrive do  
begin  
Parent:=WizardForm.DirEdit.Parent;  
Left:=WizardForm.DirEdit.Left;  
Top:=WizardForm.DirEdit.Top+WizardForm.DirEdit.Height*5;  
Width:=WizardForm.DirEdit.Width+83;  
Style:=csDropDownList;  
end  
with FreeSpaceLabel do  
begin  
Parent:=WizardForm.SelectDirPage;  
Left:=ScaleX(0);  
Top:=Scaley(167);  
Width:=ScaleX(209);  
Height:=ScaleY(13);  
end;  
WizardForm.DirBrowseButton.Visible:=true;  
WizardForm.DirEdit.Enabled:=true;  
WizardForm.DirEdit.OnChange:=@GetFreeSpaceCaption;  
WizardForm.DirEdit.Text:=WizardForm.DirEdit.Text+#0;  
FillCombo;  
cbDrive.OnClick:=@cbDriveOnClick;  
end;  
Кажется, в загашник он был отправлен потому, что че-то там не работало. Хотя когда я скомпилил, вроде все пучком было. Короче, времени разбераться нет - я обещанные проги никак не могу закончить, так что если чего неправильного найдете здесь - пишите.

Всего записей: 2038 | Зарегистр. 05-07-2008 | Отправлено: 00:13 23-07-2008
boss911



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

Всего записей: 3699 | Зарегистр. 29-01-2005 | Отправлено: 04:26 23-07-2008
Artem_Butenko



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Прошу прощения за столь стремительную генерацию вопросов. Но все же, товарищи может кто-нибудь реализовывал в Inno Setup оконтуривание на странице выбора директории установки области, включающей поле с отображением пути и кнопку "Обзор...". Подобный эффект можно реализовать в NSIS, а в Inno?

Всего записей: 711 | Зарегистр. 19-02-2008 | Отправлено: 04:26 23-07-2008
Victor_Dobrov



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ComradG - Вот этот вариант списка дисков более информативный.

Всего записей: 742 | Зарегистр. 27-09-2005 | Отправлено: 07:36 23-07-2008
SotM



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
ComradG
Ты бы всё таки скрипты такого размера в тэг [ more ] запихивай.

Всего записей: 965 | Зарегистр. 28-11-2006 | Отправлено: 08:22 23-07-2008
Cryzer



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
noiseless
Благодарю Всё пошлО)

Всего записей: 102 | Зарегистр. 22-09-2007 | Отправлено: 10:57 23-07-2008 | Исправлено: Cryzer, 11:00 23-07-2008
ZheKA767



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

Цитата:
Народ подскажите как в инсталлятор внедрить серийный номер и поле ввода было разбито на ячейки как в InstallShield.
И как ещё добавить в окно инсталлятора URL адрес как в инсталляторах от ZoneOfGames

А мне кто нибудь поможет?

Всего записей: 19 | Зарегистр. 04-07-2008 | Отправлено: 11:40 23-07-2008 | Исправлено: ZheKA767, 11:43 23-07-2008
noiseless

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ZheKA767
Я вот не знаю, например, что такое "инсталятор от ZoneOfGames" Нельзя ли подробнее? Если надо просто добавить ссылку на какой-либо сайт в форме, то см. руководство Kindly.

Всего записей: 182 | Зарегистр. 06-02-2006 | Отправлено: 12:46 23-07-2008 | Исправлено: noiseless, 12:51 23-07-2008
boss911



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

Цитата:

Код:
[Tasks]  
Name: MyTask; Description: {cm:My_Task}; Flags: unchecked

Как сделать, чтобы данный чекбокс был заблокирован при повторной установки одного и того же приложения?

HELP!

Всего записей: 3699 | Зарегистр. 29-01-2005 | Отправлено: 16:41 23-07-2008
noiseless

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

Всего записей: 182 | Зарегистр. 06-02-2006 | Отправлено: 16:58 23-07-2008
Chanka

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

Код:
[Setup]
AppId={{0C01E81B-A528-4EB8-AFA0-415F4401F7E3}
 
[Languages]
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"
 
[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
 
[Icons]
Name: "{group}\My Program"; Filename: "{app}\MyProg.exe"
Name: "{commondesktop}\My Program"; Filename: "{app}\MyProg.exe"; Tasks: desktopicon
 
[code]
procedure CurPageChanged(CurPageID: Integer);
begin
  if RegValueExists(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{0C01E81B-A528-4EB8-AFA0-415F4401F7E3}_is1','UninstallString') then
  if CurPageID = wpSelectTasks then
    WizardForm.TasksList.ItemEnabled[1]:= False;
end;

Всего записей: 208 | Зарегистр. 24-08-2006 | Отправлено: 17:03 23-07-2008
Sampron

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

Всего записей: 563 | Зарегистр. 06-01-2007 | Отправлено: 17:04 23-07-2008 | Исправлено: Sampron, 17:05 23-07-2008
boss911



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

Цитата:
Мож так


Цитата:
HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{0C01E81B-A528-4EB8-AFA0-415F4401F7E3}

А если инсталлятор не создает ключ (деинсталляции) в реестре.
 
В общем я понял, что это не реально сделать, так как инсталлятору не будет за что  зацепиться, чтобы проверить, устанавливалась ли раньше приложение или нет.

Всего записей: 3699 | Зарегистр. 29-01-2005 | Отправлено: 18:35 23-07-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 101 102 103 104

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


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru