Я работаю над приложением, которое использует файлы данных очень большого размера. Мой клиент хочет заархивировать эти файлы данных отдельно от исполняемого файла установки, тогда установщик должен разархивировать их перед началом установки. Инно это возможно? У меня нет большого опыта в Pascal, поэтому любая помощь будет высоко оценена.
распаковать файлы данных перед запуском inno setup
Ответы (1)
Нет встроенной поддержки сценариев Pascal для распаковки.
Хотя внутри Inno Setup есть множество процедур распаковки для поддержки различных способов сжать файлы во время компиляции. Ни один из них не опубликован на языке сценариев Pascal.
Это по-прежнему возможно сделать, но для выполнения шага распаковки необходимо создать DLL. Затем используйте эту DLL при удалении.
Если вы не сжимаете, вы можете использовать этот метод:
В [Files]
вашего сценария Inno Setup вы можете ссылаться на файлы, которые не содержатся в вашей настройке, используя флаг external
.
[Files]
Source: "data1.dat" DestDir: "{app}" Flags: external;
Это скопирует data1.dat, расположенный в том же каталоге, что и ваш Setup.exe, в каталог установки вашего приложения.
Альтернатива для рассмотрения
Создайте отдельный сценарий установки Inno для файлов данных. Дайте этот сценарий своим клиентам, чтобы они могли запускать его с помощью компилятора, а не программы Zip.
Он будет сжимать данные, как ZIP, хотя по умолчанию используется lzma2/max
. Затем эту установку можно было бы провести через раздел [Run]
для установки непосредственно после установки приложения.
2-я альтернатива для рассмотрения
Основываясь на вашем комментарии, я немного лучше понимаю вашу проблему.
Вы можете собрать все файлы MP3 в единую установку установки. Вы можете сгруппировать файлы MP3, используя раздел [Components]
. Это позволяет пользователю выбрать, какую группу файлов он хочет установить. Раздел [Files]
поддерживает подстановочные знаки, поэтому вы можете указать все файлы в одном каталоге, чтобы упростить обслуживание сценария.
InnoSetup создан для работы с большими установками за счет настройки способов разбиения файла setup.exe на несколько файлов.
[Setup]
DiskSpanning=Yes
DiskSliceSize=XXX
SlicesPerDisk=XXX
SolidCompression=no (Default but it not recommended to be set 'YES' with Huge installs)