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

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

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

batva (20-05-2011 20:48): Inno Setup (создание инсталяционных пакетов)  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289

   

batva



crazy administrator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Inno Setup часть 13

Предыдущие части
Это мощное бесплатное средство для создания установочных пакетов (дистрибутивов) программ. Поддерживается шифрование, установка пароля, различные задачи по завершении установки.
По сравнению с NSIS (основной конкурент на бесплатной основе) проще в настройке, имеет более понятную структуру скрипта, но генерит на 200-300 кб больший инсталятор. На данный момент он конкурирует и даже превосходит многие коммерческие установщики по функциональности и стабильности.
 
Последние версии:
Inno Setup QuickStart Pack (ansi) 5.4.2 [17.03.2011]
Скачать (1.7 Mb)
Inno Setup QuickStart Pack (unicode) 5.4.2 [17.03.2011]
Скачать (2 Mb)
Что нового? | Все сборки
Русский язык для Inno Setup версии 5.4.x от vadimsva
Скачать | Зеркало
 
Расширенная версия от китайских собратьев. Домашняя страница ResTools
Inno Setup Compiler 5.4.1-4.2 build 110319
Скачать (2.71 Mb) | Зеркало (1.8 Mb) - убраны картинки для уменьшения размера архива
Что нового?
Inno ISCmplr Setup 5.4.2 build 110329
Скачать (1.6 Mb) | Зеркало
Что нового?
Добавляет списку компонентов возможность сворачивать дочерние элементы. Содержит более удобный редактор, кроме того, компилятор имеет множество других возможностей и новых функций. На сайте автора также есть дополнительные библиотеки.
Русский язык для Inno Setup Enhanced (Restools) версии 5.4.x (ansi и unicode) от vadimsva
Скачать
 
Русская справка к версии 5.0.x, автор перевода BagIra (зеркало) | Chm-версия
 
 

Документация, FAQ, и различные примеры для Inno Setup - Здесь можно найти различную документацию, примеры, архивы веток InnoSetup для оффлайн просмотра, и т.д.
 
Дополнительные библиотеки для Inno Setup - InnoTools Downloader, коллекция DLL файлов, распаковка архивов 7-zip и FreeArc и т.д.
 
Дополнительные утилиты для Inno Setup - сюда входят различные распаковщики, надстройки над Inno Setup, различные генераторы скриптов, утилита объединения скриптов и т.д.
 
Скрипты инсталляторов для игр - В этом разделе можно найти различные обложки и скрипты инсталляторов для игр.  
 
Скрипт для добавления ярлыков в Game Explorer (работает только в Windows 7)
 

Родственные темы:

 
Inno Setup плюс внешние упаковщики - обсуждение FreeArc+Inno, Precomp+Inno, 7zip+Inno и Inno+остальные внешние упаковщики.
 
Пережатиe/Pекомпрессия/Oптимизация файлов для лучшего сжатия - обсуждение того, какими утилитами/способами лучше сжимать, чтобы получить как можно меньший размер инсталятора.
 

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

Правила топика посвященному Inno Setup  
 
Перед тем, как задать вопрос: Первый вариант: загрузите "версию для печати" (ссылка справа вверху, над номерами страниц) и попробуйте поискать средствами браузера (ctrl+F). Второй вариант: для экономии трафика и для более удобного поиска, скачайте оффлайн версию форума для просмотра в разделе Документация.
Большинство типовых задач уже решались, причем неоднократно!  
Пожалуйста, не захламляйте тему и используйте поиск, этим вы избавите тему от флуда!

Всего записей: 12593 | Зарегистр. 07-01-2001 | Отправлено: 20:41 17-02-2011 | Исправлено: YURSHAT, 21:58 07-05-2011
nik1967



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EvilDemon06
Да. Файлы и папки. Напиши, или заскринь структуру папок в {app}.

Всего записей: 1076 | Зарегистр. 11-10-2006 | Отправлено: 09:10 23-02-2011
innonewbie

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
сделал авторан-меню с помощью inno, но как его заставить открывать не фаайлы, а папки? Использую такую процедуру:  
Exec(ExpandConstant('{src}\3\Setup.exe'),'','',SW_SHOW,ewNoWait,ResultCode)
  AutoRun.Close;
  PostMessage(WizardForm.CancelButton.Handle, BM_CLICK, 0, 0);
end;

Всего записей: 168 | Зарегистр. 30-12-2010 | Отправлено: 09:46 23-02-2011
my94



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как изменить текст в описании о программе  
 
http://s2.ipicture.ru/uploads/20110223/xYswYAFM.bmp
http://s2.ipicture.ru/uploads/20110223/t6Gr6xFL.bmp
 
 
красным выделил что надо изменить

Всего записей: 33 | Зарегистр. 21-02-2011 | Отправлено: 09:47 23-02-2011 | Исправлено: my94, 09:50 23-02-2011
nik1967



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
my94
AboutBox (О программе)
 
 
 
Добавлено:
innonewbie
ShellExec

Всего записей: 1076 | Зарегистр. 11-10-2006 | Отправлено: 10:28 23-02-2011
innonewbie

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nik1967
спасибо большое за помощь! Как я понял - это из справки, но в английскую справку редко заглядываю (видимо зря), а в русской - этого нет...

Всего записей: 168 | Зарегистр. 30-12-2010 | Отправлено: 11:09 23-02-2011
EvilDemon06



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nik1967
 
{app} это у меня папка с игрой, как я предполагаю. вот скрин папки http://fotonons.ru/images/23.02.11/bdb.png

Всего записей: 22 | Зарегистр. 10-02-2011 | Отправлено: 11:26 23-02-2011
nik1967



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
innonewbie
Специально скачал Русская справка к версии 5.0.x, автор перевода BagIra (зеркало) | Chm-версия из шапки, думал может у меня какая другая версия. Но нет, есть в этой русской справке то, о чём я писал
 
Добавлено:
EvilDemon06
Ну и прописывай в [UninstallDelete]:  
Подробнее...

Всего записей: 1076 | Зарегистр. 11-10-2006 | Отправлено: 11:36 23-02-2011 | Исправлено: nik1967, 11:43 23-02-2011
my94



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

Всего записей: 33 | Зарегистр. 21-02-2011 | Отправлено: 11:49 23-02-2011
EvilDemon06



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nik1967
 
Всё сделал как ты написал, но теперь при удалении вообще не выходит окошко с выбором "оставить или удалить сохраненные игры", а игра сразу удаляется полностью...

Всего записей: 22 | Зарегистр. 10-02-2011 | Отправлено: 11:58 23-02-2011
Gnom3



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EvilDemon06 Нужно создавать процедуру бекапа при удалении, бекап я видел в шапке, в примерах, а переставить его в деинсталяцию, думаю, несложно будет.

Всего записей: 864 | Зарегистр. 14-11-2010 | Отправлено: 12:02 23-02-2011 | Исправлено: Gnom3, 12:08 23-02-2011
my94



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Чем пакуют чтобы получилось data.pack

Всего записей: 33 | Зарегистр. 21-02-2011 | Отправлено: 12:07 23-02-2011
EvilDemon06



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Gnom3
 
А можно ссылку на этот бекап, чёт ненайду....
 
всё увидел.

Всего записей: 22 | Зарегистр. 10-02-2011 | Отправлено: 12:08 23-02-2011 | Исправлено: EvilDemon06, 12:10 23-02-2011
Gnom3



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
my94
Тут пакуют.
EvilDemon06
Добавил ссылку в предидущем посте.
Там пробовать так:
Из CurStepChanged переносить в CurUninstallStepChanged с заменой всей поцедуры, CurStepChanged удалять (если только у тебя там еще чего-нибудь нету) а InitializeWizard переименовать в InitializeUninstall.
Более существенно помогут более знающие товарищи

Всего записей: 864 | Зарегистр. 14-11-2010 | Отправлено: 12:09 23-02-2011 | Исправлено: Gnom3, 12:16 23-02-2011
nik1967



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EvilDemon06
Ну попробуй процедуру procedure DeleteSavedGames(CurUninstallStep: TUninstallStep); оставить так, как было:
Код:
procedure DeleteSavedGames(CurUninstallStep: TUninstallStep);
begin
  if CurUninstallStep=usUninstall then
  if DirExists(ExpandConstant('{app}')+'\savegame') then
  if MsgBox(ExpandConstant('{cm:DeleteSave}'), mbInformation, MB_YESNO) = idYes then
  DelTree(ExpandConstant('{app}')+'\savegame', True, True, True);
end;  
но только в этом случае у тебя не будет удаляться папка игры (сама пустая папка)
 
Добавлено:
Gnom3
Да ну, ещё с бэккапом заморачиваться...

Всего записей: 1076 | Зарегистр. 11-10-2006 | Отправлено: 12:14 23-02-2011
Gnom3



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nik1967
Я люблю заморачиваться Как говорится, дурная голова, рукам покоя не дает, было-бы сейчас время - сам-бы попробовал
А там DelTree не заменить на КопиФолдер какой-нибудь?
Только сообщение DeleteSave переделать, и папку указывать нужно, либо путь по умолчанию сделать в Мои документы.
И вообще в этот месседж бокс добавить третью кнопку - удалить, забекапить, отмена деинсталляции

Всего записей: 864 | Зарегистр. 14-11-2010 | Отправлено: 12:18 23-02-2011 | Исправлено: Gnom3, 12:30 23-02-2011
EvilDemon06



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nik1967
 
Нет тоже не получается, так окошко выходит, но папка в любом варианте удаляется полностью со всеми файлами.
 
Gnom3 Да уж, замороки с этим бекапом жестокие...

Всего записей: 22 | Зарегистр. 10-02-2011 | Отправлено: 12:31 23-02-2011
Gnom3



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EvilDemon06
простейший вариант - дедаеш батник, который копирует папку с сохранениями в Мои документы, например, и запускаеш его из АнинсталлРан
Команды которые помогут тебе в этом.
 
Переменные командной строки.

Всего записей: 864 | Зарегистр. 14-11-2010 | Отправлено: 12:34 23-02-2011 | Исправлено: Gnom3, 12:58 23-02-2011
nik1967



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всех форумчан - мужчин поздравляю с нашим праздником с Днём Защитника!

EvilDemon06
А ты в [UninstallDelete] прописал, как я написал? Если да, то есть ещё у меня подозрение. Если используешь скрипт с блочной системой, то открой каждый блок и посмотри в начале скрипта, есть или нет
Код:
[UninstallDelete]
Type: filesandordirs; Name: {app}
я помнится в каких то скриптах это прописывал (если конечно пользуешься скриптом написанным в соавторстве с nik1967 ), ну и удали [UninstallDelete] в этих блоках соответственно нафиг.

Всего записей: 1076 | Зарегистр. 11-10-2006 | Отправлено: 12:44 23-02-2011 | Исправлено: nik1967, 12:49 23-02-2011
my94



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Помогите кто может прикрепить к этому скрипту() распаковку arc архивов
 
 
 
Скрипт:
 
[Setup]
AppId={{4E7C4AAA-6115-4228-B387-707B52DDCD89}
AppName=My Program
AppVerName=My Program 1.5
AppPublisher=My Company, Inc.
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
OutputBaseFilename=setup
Compression=lzma
SolidCompression=no
;disablereadypage=true
 
[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
 
[Messages]
BeveledLabel=111
 
[Tasks]
Name: desktopicon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons}; Flags: unchecked
 
[Files]
Source: Office2007.cjstyles; DestDir: {tmp}; Flags: dontcopy nocompression
Source: ISSkin.dll; DestDir: {tmp}; Flags: dontcopy nocompression
source: 1.bmp; DestDir: {tmp}; Flags: dontcopy nocompression
Source: isgsg.dll; DestDir: {tmp}; Flags: dontcopy nocompression
Source: splash.png; DestDir: {tmp}; Flags: dontcopy nocompression
 
[Code]
var
  AboutButton, CancelButton, URLButton: TButton;
  BackgroundBitmapImage: TBitmapImage;
  BackgroundBitmapText: TNewStaticText;
  BmpFile: TBitmapImage;
 
procedure LoadSkin(lpszPath: String; lpszIniFileName: String);
external 'LoadSkin@files:isskin.dll stdcall';
 
procedure UnloadSkin();
external 'UnloadSkin@files:isskin.dll stdcall';
 
procedure ShowSplashScreen(p1:HWND;p2:string;p3,p4,p5,p6,p7:integer;p8:boolean;p9:Cardinal;p10:integer); external 'ShowSplashScreen@files:isgsg.dll stdcall delayload';
 
function InitializeSetup(): Boolean;
begin
 ExtractTemporaryFile('Office2007.cjstyles');
 LoadSkin(ExpandConstant('{tmp}\Office2007.cjstyles'), '');
 Result := True;
end;
 
procedure DeinitializeSetup();
begin
 UnloadSkin();
end;
 
procedure AboutButtonOnClick(Sender: TObject);
begin
  MsgBox('Ýòî äåìî âåðñèÿ ïðîãðàììû.', mbInformation, mb_Ok);
end;
 
procedure URLLabelOnClick(Sender: TObject);
var
  ErrorCode: Integer;
begin
  ShellExec('open', 'http://forum.ru-board.com/topic.cgi?forum=5&topic=35848&start=40#lt', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode);
end;
 
procedure InitializeWizard();
begin
ExtractTemporaryFile('1.bmp'); //Èçâëåêàåì ôàéë, êîòîðûé ïîéäåò â îêíî èíñòàëëÿòîðà
//Âñòàâëÿåì èçîáðàæåíèå â îêíî èíñòàëëÿòîðà, äëÿ êàæäîé ñòðàíèöû íóæíî äîáâëÿòü èçîáðàæåíèå çàíîâî
ExtractTemporaryFile('splash.png');
BmpFile:= TBitmapImage.Create(WizardForm);
with BmpFile do begin
Bitmap.LoadFromFile(ExpandConstant('{tmp}\1.bmp'));
SetBounds(ScaleX(0), ScaleY(0), ScaleX(497), ScaleY(313));
Stretch:= true;
Parent:= WizardForm.WelcomePage;
end;
 
BmpFile:= TBitmapImage.Create(WizardForm);
with BmpFile do begin
Bitmap.LoadFromFile(ExpandConstant('{tmp}\1.bmp'));
SetBounds(ScaleX(0), ScaleY(0), ScaleX(497), ScaleY(313));
Stretch:= true;
Parent:= WizardForm.FinishedPage;
end;
 
ShowSplashScreen(WizardForm.Handle,ExpandConstant('{tmp}')+'\splash.png',1000,3000,1000,0,255,False, $FFFFFF,10);
 
with WizardForm do
begin
WelcomeLabel1.Hide;
WelcomeLabel2.Hide;
FinishedHeadingLabel.Hide;
FinishedLabel.Hide;
end;
begin
with WizardForm.NextButton do
begin
Left := ScaleX(320);
end;
 
  CancelButton := WizardForm.CancelButton;
  AboutButton := TButton.Create(WizardForm);
  with AboutButton do begin
  Left := WizardForm.ClientWidth - CancelButton.Left - CancelButton.Width;
  Top := CancelButton.Top;
  Width := CancelButton.Width;
  Height := CancelButton.Height;
  Caption := '&Repack info';
  OnClick := @AboutButtonOnClick;
  Parent := WizardForm;
  end;
 
  URLButton := TButton.Create(WizardForm);
  with URLButton do begin
  Left := AboutButton.Left + AboutButton.Width + ScaleX(50);
  Top := CancelButton.Top;
  Width := CancelButton.Width;
  Height := CancelButton.Height;
  Caption := 'Ñàéò';
  OnClick := @URLLabelOnClick;
  Parent := WizardForm;
    end;
  end;
  BackgroundBitmapImage := TBitmapImage.Create(MainForm);
  BackgroundBitmapImage.Left := ScaleX(50);
  BackgroundBitmapImage.Top := ScaleY(100);
  BackgroundBitmapImage.AutoSize := True;
  BackgroundBitmapImage.Bitmap := WizardForm.WizardBitmapImage.Bitmap;
  BackgroundBitmapImage.Parent := MainForm;
 
  BackgroundBitmapText := TNewStaticText.Create(MainForm);
  BackgroundBitmapText.Left := BackgroundBitmapImage.Left;
  BackgroundBitmapText.Top := BackgroundBitmapImage.Top + BackgroundBitmapImage.Height + ScaleY(8);
  BackgroundBitmapText.Caption := 'TBitmapImage';
  BackgroundBitmapText.Parent := MainForm;
end;
 
Procedure CurPageChanged(CurPageID: Integer);
Begin
  if CurPageID <> wpWelcome then begin
  AboutButton.Hide; URLButton.Hide end else begin
  AboutButton.Show; URLButton.Show; end;
end;

Всего записей: 33 | Зарегистр. 21-02-2011 | Отправлено: 12:46 23-02-2011 | Исправлено: my94, 12:51 23-02-2011
EvilDemon06



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nik1967
 
Спасибо!
 
Помогло! В Isdone скрипте было прописано [unistalldelete], я туда тоже самое добавил и всё получилось. Только вот папка пустая остается от игры... Скрипт использую Xenus2+botva2+ISDone0.5L
 
Gnom3
 
Спасибо за советы!

Всего записей: 22 | Зарегистр. 10-02-2011 | Отправлено: 13:01 23-02-2011 | Исправлено: EvilDemon06, 13:03 23-02-2011
   

Страницы: 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 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289

Компьютерный форум Ru.Board » Компьютеры » Программы » Inno Setup (создание инсталяционных пакетов)
batva (20-05-2011 20:48): Inno Setup (создание инсталяционных пакетов)


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru