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

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

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

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

Открыть новую тему     Написать ответ в эту тему

Cheery



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

Предыдущие части
Это мощное бесплатное средство для создания установочных пакетов (дистрибутивов) программ. Поддерживается шифрование, установка пароля, различные задачи по завершении установки.
По сравнению с NSIS (основной конкурент на бесплатной основе) проще в настройке, имеет более понятную структуру скрипта, но генерит на 200-300 кб больший инсталятор. На данный момент он конкурирует и даже превосходит многие коммерческие установщики по функциональности и стабильности.
All version | Исходники проекта
 
Последние версии:
Inno Setup 6.3.3 [12.07.2024]
Скачать (5,37 Mb)
 
Inno Setup QuickStart Pack (Unicode) 6.1.2 [15.11.2020]
Скачать (4.23 Mb)
 
Что нового? | Что нового v.6x?  
 
Русский язык для Inno Setup v6.x
Скачать
 
Русский язык для Inno Setup v5.x
Скачать
 
Русская справка к версии - 5.6.1 (Зеркало) | 6.0.0 beta | 6.x
 
Последняя версия с поддержкой Windows 95 - 5.1.7
 
Последняя версия с поддержкой Windows 98/ME/NT4 - 5.4.3 ANSI
 
Последняя версия с поддержкой Windows 2000/XP/2003 - 5.6.1 (ANSI, Unicode)
 

Расширенная версия от китайских собратьев. Офсайт
Inno Setup Compiler 5.5.0-5.2 build 121216
Скачать (2.98 Mb) |Скачать (2.98 Mb) - зеркало GoogleDrive | Что нового
 
Inno ISCmplr Setup 5.5.1 build 120726
Скачать (1.73 Mb) | Что нового
 
Добавляет списку компонентов возможность сворачивать дочерние элементы. Содержит более удобный редактор, кроме того, компилятор имеет множество других возможностей и новых функций. На сайте автора также есть дополнительные библиотеки.
 
Русский язык для Inno Setup Enhanced (Restools) версии 5.4.x (ansi и unicode) от vadimsva
Скачать
 


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

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

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

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

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

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 23:29 13-10-2013 | Исправлено: boss911, 03:15 07-11-2024
painter7



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ErikPshat, так там полностью рабочий код приведен c объявлением переменных и типами:
http://www.jrsoftware.org/ishelp/index.php?topic=isxfunc_getopenfilenamemulti

Всего записей: 1259 | Зарегистр. 25-04-2012 | Отправлено: 16:59 31-07-2018
AlexALSP



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите в какой последовательности устанавливаются файлы после созданияинсталла ? Исходя из раздела  
 
[Components]
 
1
2
3
 
 , как они прописаны в нем или как вздумается . ?
 
Или исходя их раздела  
 
[Files]  
 
1
2
3
 
?

Всего записей: 1255 | Зарегистр. 22-04-2007 | Отправлено: 17:15 29-08-2018
MisterMyth

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Не помню как сделать:
[Tasks]
Name: "DirectX"; Description: "Обновить DirectX"; GroupDescription: "Системные задачи:"
Name: "vcredist"; Description: "Обновить Microsoft Visual С++ X32"; GroupDescription: "Системные задачи:"
Name: "vcredist2"; Description: "Обновить Microsoft Visual С++ X64"; GroupDescription: "Системные задачи:"
Name: "ReadMe"; Description: "Посмотреть Read Me"; GroupDescription: "Прочее:"
Name: "MakeInc"; Description: "Создать ярлык для запуска"; GroupDescription: "Прочее:"
 
Как сделать чтобы третья задача была выполнена только для х64 - ых систем? И как спрятать 2 эти установки в одну задачу? То есть собрать первую и вторую в одну?

Всего записей: 1066 | Зарегистр. 03-01-2015 | Отправлено: 21:45 29-08-2018 | Исправлено: MisterMyth, 21:46 29-08-2018
AlexALSP



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MisterMyth
 
Частично так  
 
[Files]
 
Components: software\dx; Source: "folders\dx_2010\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs
Components: software\vc_2010; Source: "folders\VS-2010\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs
Components: software\vc_2012; Source: "folders\VS-2012\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs
Components: software\vc_2013; Source: "folders\VS-2013\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs
Components: software\vc_2015; Source: "folders\VS-2015\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs
 
 
[Components]
 
 
; Программы для установки
Name: "software"; Description: "Програмное обеспечение"; Types: full custom;
Name: "software\dx"; Description: "Microsoft DirectX"; Types: full; Flags: disablenouninstallwarning
Name: "software\vc_2010"; Description: "Microsoft Visual C ++ 2010"; Types: full; Flags: disablenouninstallwarning
Name: "software\vc_2012"; Description: "Microsoft Visual C ++ 2012"; Types: full; Flags: disablenouninstallwarning
Name: "software\vc_2013"; Description: "Microsoft Visual C ++ 2013"; Types: full; Flags: disablenouninstallwarning
Name: "software\vc_2015"; Description: "Microsoft Visual C ++ 2015"; Types: full; Flags: disablenouninstallwarning
 
 
 
 
[Run]
 
Filename: "{app}\_CommonRedist\vcredist\2010\vcredist_x86.exe"; Parameters: "/quiet /norestart"; Components: "software\Vc_2010"; StatusMsg: "Идет установка Microsoft Visual C++ 2010";
Filename: "{app}\_CommonRedist\vcredist\2010\vcredist_x64.exe"; Parameters: "/quiet /norestart"; Components: "software\Vc_2010"; Check: "IsWin64"; StatusMsg: "Идет установка Microsoft Visual C++ 2010";
 
Filename: "{app}\_CommonRedist\vcredist\2012\vcredist_x86.exe"; Parameters: "/quiet /norestart"; Components: "software\Vc_2012"; StatusMsg: "Идет установка Microsoft Visual C++ 2012";
Filename: "{app}\_CommonRedist\vcredist\2012\vcredist_x64.exe"; Parameters: "/quiet /norestart"; Components: "software\Vc_2012"; Check: "IsWin64"; StatusMsg: "Идет установка Microsoft Visual C++ 2012";
 
Filename: "{app}\_CommonRedist\vcredist\2013\vcredist_x86.exe"; Parameters: "/quiet /norestart"; Components: "software\Vc_2013"; StatusMsg: "Идет установка Microsoft Visual C++ 2013";
Filename: "{app}\_CommonRedist\vcredist\2013\vcredist_x64.exe"; Parameters: "/quiet /norestart"; Components: "software\Vc_2013"; Check: "IsWin64"; StatusMsg: "Идет установка Microsoft Visual C++ 2013";
 
Filename: "{app}\_CommonRedist\vcredist\2015\vcredist_x86.exe"; Parameters: "/quiet /norestart"; Components: "software\Vc_2015"; StatusMsg: "Идет установка Microsoft Visual C++ 2015";
Filename: "{app}\_CommonRedist\vcredist\2015\vcredist_x64.exe"; Parameters: "/quiet /norestart"; Components: "software\Vc_2015"; Check: "IsWin64"; StatusMsg: "Идет установка Microsoft Visual C++ 2015";
 
Filename: "{app}\_CommonRedist\DirectX\Jun2010\DXSETUP.exe"; Parameters: "/silent"; Components: "software\Dx";  StatusMsg: "Идет установка DirectX";


----------
Развлекалово | World of Warships

Всего записей: 1255 | Зарегистр. 22-04-2007 | Отправлено: 22:03 29-08-2018
AlexALSP



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Товарищи программеры, подсобите изменить скрипт.
 
Скрипт работает как надо, но необходимо его модернизация под определенные нужды  
 
Суть:  
 
Скрипт делает резервные копии заменяемых файлов, но если замененные файлы заменяются другими файлами, то резервная копия первого файла просто заменяется на резервную копию второго файла, что ни есть хорошо.
 
необходимо, что бы создавалась разная копия заменяемого файла типа *.bak, bak1, bak2 и т.д и что бы при удалении программы шло обратное последовательное восстановление копий от последней к первой.  
 
Вот сам скрипт который требуется модернизировать. Очень нужно, ну просто ахиреть , как нужно. Заранее спасибо.  
 

Код:
 
procedure CreateBackup;
var
srcFile, destFile: string;
begin
srcFile:= ExpandConstant(CurrentFileName);
destFile:= srcFile + '.bak';
DeleteFile(destFile);
RenameFile(srcFile, destFile);
end;
 
procedure RestoreBackup(backupDir: string);
var
srcFile, destFile: string;
FSR, DSR: TFindRec;
FindResult: Boolean;
APath: string;
begin
APath := AddBackslash(backupDir);
FindResult := FindFirst(APath + '*.bak', FSR);
try
while FindResult do
begin
if FSR.Attributes and FILE_ATTRIBUTE_DIRECTORY = 0 then
begin
srcFile:= APath + FSR.Name;
destFile:= Copy(srcFile, 0, Length(srcFile)-4);
DeleteFile(destFile);
RenameFile(srcFile, destFile);
end;
FindResult := FindNext(FSR);
end;
FindResult := FindFirst(APath + '*.*', DSR);
while FindResult do
begin
if ((DSR.Attributes and FILE_ATTRIBUTE_DIRECTORY) = FILE_ATTRIBUTE_DIRECTORY) and
not ((DSR.Name = '.') or (DSR.Name = '..')) then
{Recursion} RestoreBackup(APath + DSR.Name);
FindResult := FindNext(DSR);
end;
finally
FindClose(FSR);
FindClose(DSR);
end;
end;
 
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
if CurUninstallStep = usPostUninstall then
begin
RestoreBackup(ExpandConstant('{app}'))
end;
end;
 
 

Всего записей: 1255 | Зарегистр. 22-04-2007 | Отправлено: 01:04 30-08-2018 | Исправлено: AlexALSP, 01:06 30-08-2018
MisterMyth

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Назрело еще 2 вопроса:
1) Inno Setup поддерживает запись параметров в ini. Это я знаю. Но не очень ясно вот что: она по любому создаст ini файл после завершения установки?
2) Как я понял работу с ini файлами без секций, где только параметры программа не поддерживает?

Всего записей: 1066 | Зарегистр. 03-01-2015 | Отправлено: 17:15 31-08-2018
innonewbie

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MisterMyth
С инишниками как-то редко работаю, но, думаю, если сделать всю работу не через секцию [ini], а через [code], то инишник можно создать и до завершения установи, ну и опять же также можно создать инишник только с параметрами - без секций, например с помощью SaveStringToFile.

Всего записей: 168 | Зарегистр. 30-12-2010 | Отправлено: 10:14 03-09-2018
Ventor93

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте. Такое дело: создал инсталлятор который ставит несколько программ, после инсталляции предлагает запустить обе одновременно. Как сделать чтобы галочку можна было ставить только одну, чтобы запускалась только одна выбранная программа? Когда-то создавал такой инсталлятор и он работает, выборочно запускает, но хоть убей не помню как я это делал.

Всего записей: 7 | Зарегистр. 27-02-2017 | Отправлено: 15:05 11-09-2018
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ventor93
 
Например через type. Идея простая - создаём несколько type, выполняем общие операции (для них  ставим флаги всех type), а в конце, в [Run] несколько записей запуска привязанных каждая к своему типу. Это на уровне инки, в NSIS чуть иначе - в хидере скрипта до любых прототипов функций или макросов объявляем переменные и затем используем  секции выбора и по логике ИСКЛЮЧАЮЩЕЕ-ИЛИ ставим одну переменную-семафор, а остальные не трогаем, в post проверяем условия If Sem==true  Then <run> End; . Грубо заготовка такого решения выглядит так:

Код:
!define ...
...
!define ...
!include ...
...
!include ...
var sem1
var sem2
...
var semN
<other header code>
Function .onInit
StrCpy sem1 0 ; установим начальное значение семафора
......
StrCpy semN 0 ; установим начальное значение семафора
<code>
FunctionEnd
Section sec1
StrCpy sem0 1
SectionEnd
...........
Section secN
StrCpy semN 1
SectionEnd
Section -select
/* - такую секцию нельзя "погасить" - она невидима, но всегда работает */
StrCmp sem0 +1 m1
StrCpy sem1 0
...
StrCpy semN 0
Goto nxt
StrCmp sem1 +1 m1
StrCpy sem0 0
StrCpy sem2 0
...
StrCpy semN 0
Goto nxt
<....> ; обнуляем все семафоры кроме выбранного
nxt:
SectionEnd
Section -main
<code>
SectionEnd
Section -Post
 
StrCmp sem0 +1 +4
Exec <app>
Goto end
.....
end:
SetAutoClose true
SectionEnd


----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 34329 | Зарегистр. 31-07-2002 | Отправлено: 16:37 11-09-2018
Ventor93

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

Цитата:
Например через type. Идея простая - создаём несколько type, выполняем общие операции (для них  ставим флаги всех type), а в конце, в [Run] несколько записей запуска привязанных каждая к своему типу. Это на уровне инки, в NSIS чуть иначе - в хидере скрипта до любых прототипов функций или макросов объявляем переменные и затем используем  секции выбора и по логике ИСКЛЮЧАЮЩЕЕ-ИЛИ ставим одну переменную-семафор, а остальные не трогаем, в post проверяем условия If Sem==true  Then <run> End; . Грубо заготовка такого решения выглядит так:  
 
Код:
!define ...  
...  
!define ...  
!include ...  
...  
!include ...  
var sem1  
var sem2  
...  
var semN  
<other header code>  
Function .onInit  
StrCpy sem1 0 ; установим начальное значение семафора  
......  
StrCpy semN 0 ; установим начальное значение семафора  
<code>  
FunctionEnd  
Section sec1  
StrCpy sem0 1  
SectionEnd  
...........  
Section secN  
StrCpy semN 1  
SectionEnd  
Section -select  
/* - такую секцию нельзя "погасить" - она невидима, но всегда работает */  
StrCmp sem0 +1 m1  
StrCpy sem1 0  
...  
StrCpy semN 0  
Goto nxt  
StrCmp sem1 +1 m1  
StrCpy sem0 0  
StrCpy sem2 0  
...  
StrCpy semN 0  
Goto nxt  
<....> ; обнуляем все семафоры кроме выбранного  
nxt:  
SectionEnd  
Section -main  
<code>  
SectionEnd  
Section -Post  
 
StrCmp sem0 +1 +4  
Exec <app>  
Goto end  
.....  
end:  
SetAutoClose true  
SectionEnd  

 
Что-то много кода, вот не помню как раньше делал, но там было проще. Но идея интересная, попробую. Большое спасибо.

Всего записей: 7 | Зарегистр. 27-02-2017 | Отправлено: 21:40 11-09-2018 | Исправлено: Ventor93, 21:42 11-09-2018
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ventor93
 
Это NSIS код, а там С подобный язык и другие имена операторов. А сам NSIS написан на C/С++. Лично я предпочитаю им пользоваться из-за компактности бинарников и гибкости входного языка компилятора.

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 34329 | Зарегистр. 31-07-2002 | Отправлено: 21:54 11-09-2018
dodakaedr



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

Всего записей: 178 | Зарегистр. 31-01-2014 | Отправлено: 22:48 11-09-2018
MisterMyth

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ребята а напомните мне переменную, которая равна папке, где лежит проект для сборки. Если правильно помню то, {src}. Спасибо.

Всего записей: 1066 | Зарегистр. 03-01-2015 | Отправлено: 12:39 21-09-2018
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MisterMyth
 
Да, {src}

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 34329 | Зарегистр. 31-07-2002 | Отправлено: 12:54 21-09-2018
mig73



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MisterMyth
Вообще-то {src} это константа указывает на путь к папке с самим инсталлятором, а папка проекта это видимо рабочая папка со скриптом по умолчанию. Можно изменить её в секции [Setup], например SourceDir=c:\my_project

Всего записей: 8283 | Зарегистр. 24-02-2010 | Отправлено: 13:04 21-09-2018
AlexALSP



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

Цитата:
Ребята а напомните мне переменную, которая равна папке, где лежит проект для сборки. Если правильно помню то, {src}. Спасибо.


Код:
Components: modpack\maps\m_tokio; Source: "tokio\smol_charts\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs

 
или если просто распаковка без выбора компонентов то так  
 

Код:
Source: "tokio\smol_charts\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs


Всего записей: 1255 | Зарегистр. 22-04-2007 | Отправлено: 13:48 21-09-2018 | Исправлено: AlexALSP, 13:50 21-09-2018
mig73



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AlexALSP
Простите, а чём сакральный смысл вашего поста с цитатой? Вы тоже считаете что {src} это папка с проектом или как?

Всего записей: 8283 | Зарегистр. 24-02-2010 | Отправлено: 14:00 21-09-2018
AlexALSP



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mig73
 
В чем был вопрос?
 
Человеку нужна папка проекта,  если логически размышлять, то то место откуда берутся файлы для упаковки.  
 
Я и дал пример, как и откуда .
 
Для чего ему это нужно, из его поста не видно. Поэтому самому догадываться нет смысла.  
 
Есть
DefaultDirName - папка установки
OutputDir - папка вывода создаваемого установщика
 
Либо вот вам выписка из справки.
 

Цитата:
Если указан флаг external, к устанавливаемому файлу (или маске) должен быть прописан полный путь, иначе инсталлятор будет искать его в своей папке (например, "{src}\license.ini").

 

Всего записей: 1255 | Зарегистр. 22-04-2007 | Отправлено: 14:48 21-09-2018
MisterMyth

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

Всего записей: 1066 | Зарегистр. 03-01-2015 | Отправлено: 16:17 21-09-2018
AlexALSP



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я дал вам выше примеры где все находящиеся в папки распаковывается в том виде как в ней сформирована структура файлов и папок.  
 
У вас есть папка для  проектов
 
Вася Пупкин
 
в ней у вас скрипт инсталятора
 
в папке есть проект Гестапо в котором структура папок
 
фриц1\mod
фриц2\img
фриц3\wav
 
вариация может быть разная , может все в одной папке лежать
 
и того путти будут , опять же в зависимости от исталятора, просто распаковывает в папку установки или дает выбор какие компоненты установить.
 
Components: proga\p_mod; Source: "Гестапо\фриц1\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs
Components: proga\p_img; Source: "Гестапо\фриц2\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs
Components: proga\p_wav; Source: "Гестапо\фриц3\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs
 
или же если просто тупо распаковка
 
Source: "Гестапо\фриц1\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs
Source: "Гестапо\фриц2\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs
Source: "Гестапо\фриц3\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs
 
и распакует все в папку установки? какую выберет пользователь к примеру:
Fashist\mod
Fashist\img
Fashist\wav
 
 
Путь указан с учетом скрипта в корене проекта, если же скрипт в папке Гестапо
 
то путь будет  
 
Source: "фриц1\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs
 
 

Всего записей: 1255 | Зарегистр. 22-04-2007 | Отправлено: 16:53 21-09-2018 | Исправлено: AlexALSP, 17:01 21-09-2018
Открыть новую тему     Написать ответ в эту тему

Страницы: 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

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


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru