Zip представляет наиболее популярный формат архивации и сжатия файлов. И язык Python имеет встроенный модуль для работы с ними — zipfile . С помощью этого модуля можно создавать, считывать, записывать zip-файлы, получать их содержимое и добавлять в них файлы. Также поддерживается шифрование, но не поддерживается дешифрование.
Для представления zip-файла в этом модуле определен класс ZipFile . Он имеет следующий конструктор:
ZipFile(file, mode=’r’, compression=ZIP_STORED, allowZip64=True, compresslevel=None, *, strict_timestamps=True, metadata_encoding=None)
- file : путь к zip-файлу
- mode : режим открытия файла. Может принимать следующие значения:
- r : применяется для чтения существующего файла
- w : применяется для записи нового файла
- a : применяется для добавления в файл
- ZIP_STORED : архивация без сжатия (значение по умолчанию)
- ZIP_DEFLATED : стандартный тип сжатия при архивации в zip
- ZIP_BZIP2 : сжатие с помощью способа BZIP2
- ZIP_LZMA : сжатие с помощью способа LZMA
Для работы с файлами этот класс предоставляет ряд методов:
Как открыть zip. файл на телефоне.
- close() : закрывает zip-файл
- getinfo() : возвращает информацию об одном файле из архива в виде объекта ZipInfo
- namelist() : возвращает список файлов архива
- infolist() : возвращает информацию обо всех файлах из архива в виде списока объектов ZipInfo
- open() : предоставляет доступ к одному из файлов в архиве
- read() : считывает файл из архива в набор байтов
- extract() : извлекает из архива один файл
- extractall() : извлекает все элементы из архива
- setpassword() : устанавливает пароль для zip-файла
- printdir() : выводит на консоль содержимое архива
Создание и закрытие файла
Для создания архивного файла в конструктор ZipFile передается режим «w» или «a»:
from zipfile import ZipFile myzip = ZipFile(«metanit.zip», «w»)
После выполнения кода в текущей папке будет создаваться пустой архивный файл «metanit.zip».
После окончания работы с архивом для его закрытия применяется метод close() :
from zipfile import ZipFile myzip = ZipFile(«metanit.zip», «w») myzip.close()
Но так как ZipFile также представляет менеджер контекста, то он поддерживает выражение with , которое определяет контекст и автоматически закрывает файл по завершению контекста:
from zipfile import ZipFile with ZipFile(«metanit.zip», «w») as myzip: pass
Запись файлов в архив
Для записи файлов в архив применяется файл write() :
write(filename, arcname=None, compress_type=None, compresslevel=None)
Первый параметр представляет файл, который записиывается в архив. Второй параметр — arcname устанавливает произвольное имя для файла внутри архива (по умолчанию это само имя файла). Третий параметр — compress_type представляет тип сжатия, а параметр compresslevel — уровень сжатия.
Чтобы открыть ZIP на телефоне андроид нужно приложение от гугла
Например, запишем в архив «metanit.zip» файл «hello.txt» (который, как предполагается, находится в той же папке, где и текущий скрипт python):
from zipfile import ZipFile with ZipFile(«metanit.zip», «w») as myzip: myzip.write(«hello.txt»)
Стоит учитывать, что при открытии файла в режиме «w» при всех последующих записях текущее содержимое будет затираться, то есть фактически архивный файл будет создаваться заново. Если нам необходимо добавить, то необходимо определять zip-файл в режиме «a»:
from zipfile import ZipFile with ZipFile(«metanit.zip», «a») as myzip: myzip.write(«hello2.txt») myzip.write(«forest.jpg»)
Стоит отметить, что по умолчанию сжатие не применяется. Но при необходимости можно применить какой-нибудь способ сжатия и уровень сжатия»
from zipfile import ZipFile, ZIP_DEFLATED with ZipFile(«metanit.zip», «w», compression=ZIP_DEFLATED, compresslevel=3) as myzip: myzip.write(«hello.txt»)
Необходимо учитывать, что если мы попробуем добавить в архив файлы с уже имеющимися именами, то консоль выведет предупреждение. Чтобы избежать наличия файлов с дублирующимися именами можно через второй папаметр метода write явным образом определить для них уникальное имя внутри архива:
from zipfile import ZipFile with ZipFile(«metanit.zip», «a») as myzip: myzip.write(«hello.txt», «hello1.txt») myzip.write(«hello.txt», «hello2.txt») myzip.write(«hello.txt», «hello3.txt»)
Получение информации о файлах в архиве
Метод infolist() возвращает информацию о файлах в архиве с виде списка, где каждый отдельный файл представлен объектом ZipInfo:
from zipfile import ZipFile with ZipFile(«metanit.zip», «a») as myzip: print(myzip.infolist())
Класс ZipInfo предоставляет ряд атрибутов для хранения информации о файле. Основные из них:
- filename : название файла
- date_time : дата и время последнего изменения файла в виде кортежа в формате (год, месяц, день, час, минута, секунда)
- compress_type : тип сжатия
- compress_size : размер после сжатия
- file_size : оригинальный размер файла до сжатия
Получим эти данные по каждому отдельному файлу в архиве:
from zipfile import ZipFile with ZipFile(«metanit.zip», «r») as myzip: for item in myzip.infolist(): print(f»File Name: Date: Size: «)
Примерный консольный вывод:
File Name: hello.txt Date: (2022, 11, 23, 20, 21, 34) Size: 18 File Name: forest.jpg Date: (2022, 11, 19, 20, 46, 52) Size: 103956 File Name: hello1.txt Date: (2022, 11, 23, 20, 21, 34) Size: 18 File Name: hello2.txt Date: (2022, 11, 23, 20, 21, 34) Size: 18 File Name: hello3.txt Date: (2022, 11, 23, 20, 21, 34) Size: 18
С помощью метода is_dir() можно проверить, является ли элемент в архиве папкой:
from zipfile import ZipFile with ZipFile(«metanit.zip», «r») as myzip: for item in myzip.infolist(): if(item.is_dir()): print(f»Папка: «) else: print(f»Файл: «)
Если надо получить только список имен входящих в архив файлов, то применяется метод namelist() :
from zipfile import ZipFile with ZipFile(«metanit.zip», «r») as myzip: for item in myzip.namelist(): print(item)
Консольный вывод в моем случае:
hello.txt forest.jpg hello1.txt hello2.txt hello3.txt
С помощью метода getinfo() можно получить данные по одному из архивированных файлов, передав в метод его имя в архиве. Результат метода — объект ZipInfo:
from zipfile import ZipFile with ZipFile(«metanit.zip», «r») as myzip: try: hello_file = myzip.getinfo(«hello.txt») print(hello_file.file_size) except KeyError: print(«Указанный файл отсутствует»)
Если в архиве не окажется элемента с указанным именем, то метод сгенерирует ошибку KeyError.
Извлечение файлов из архива
Для извлечения всех файлов из архива применяется метод extractall() :
extractall(path=None, members=None, pwd=None)
Первый параметр метода устанавливает каталог для извлечения архива (по умолчанию извлечение идет в текущий каталог). Параметр members представляет список строк — список названий файлов, которые надо извлечт из архива. И третий параметр — pwd представляет пароль, в случае если архив закрыт паролем.
Например, извлечем все файлы из архива:
from zipfile import ZipFile with ZipFile(«metanit.zip», «r») as myzip: myzip.extractall()
Извлечение в определенную папку:
myzip.extractall(path=»metanit»)
Извлечение части файлов:
# извлекаем файлы «hello.txt», «forest.jpg» в папку «metanit2″ myzip.extractall(path=»metanit2», members=[«hello.txt», «forest.jpg»])
Для извлечения одного файла применяется метод extract() , в который в качестве обязательного параметра передается имя извлекаемого файла:
myzip.extract(«hello.txt»)
Считывание файла
Метод read() позволяет считать содержимое файла из архива в набор байтов:
from zipfile import ZipFile with ZipFile(«metanit.zip», «r») as myzip: content = myzip.read(«hello5.txt») print(content)
Открытие файла
Метод open() позволяет открывать отдельные файлы из архива без непосредственного их извлечения:
open(name, mode=’r’, pwd=None, *, force_zip64=False)
В качестве первого обязательного параметра передается имя файла внутри архива. Второй параметр — mode устанавливает режим открытия. Параметр pwd задает пароль, если файл защищен паролем. И параметр force_zip64 при значении True позволяет открывать файлы больше 4 Гб.
Этот файл может быть полезен для манипулирования файлом, например, для считывания его содержимого или, наоборот, для записи в него. Например, откроем файл и считаем его содержимое:
from zipfile import ZipFile with ZipFile(«metanit.zip», «a») as myzip: # записываем в архив новый файл «hello5.txt» with myzip.open(«hello5.txt», «w») as hello_file: encoded_str = bytes(«Python. «, «UTF-8») hello_file.write(encoded_str)
Источник: metanit.com
ZIP файлы – как использовать и распаковывать архивы на Windows 10
Файл с расширением ZIP представляет сжатый файл и является наиболее широко используемый формат архива, который совместим с большинством программ для сжатия файлов.
ZIP-файл, как и другие форматы архивных файлов, представляет собой просто набор из одного или нескольких файлов и/или папок, но сжимается в один файл для удобной транспортировки и сжатия.
Наиболее распространенное использование файлов ZIP – загрузка программного обеспечения. Архивирование программного обеспечения экономит место на сервере, сокращает время, необходимое для его загрузки установочных файлов на ваш компьютер и обеспечивает прекрасную организацию сотен или тысяч файлов в одном ZIP-файле.
Ещё один пример можно увидеть при загрузке или обмене десятками фотографий. Вместо того, чтобы отправлять каждое изображение по отдельности или сохранять каждое изображение – одно за другим – с веб-сайта, отправитель может поместить файлы в ZIP-архив и передать всё одним файлом.
Как открыть файл ZIP
Самый простой способ открыть ZIP-файл – дважды щелкнуть по нему, и ваш компьютер покажет вам папки и файлы, содержащиеся внутри архива. В большинстве операционных систем, включая Windows и macOS, файлы ZIP обрабатываются внутри, без необходимости какого-либо дополнительного программного обеспечения.
Однако, существует много инструментов сжатия/распаковки, которые можно использовать для открытия (и создания!) ZIP-файлов. Есть причина, по которой их обычно называют zip/unzip tools!
Включая Windows, почти все программы, которые разархивируют ZIP-файлы, также имеют возможность архивировать их; другими словами, они могут сжать один или несколько файлов в формат ZIP. Некоторые могут также зашифровать и защитить их паролем. Если бы мне пришлось порекомендовать один или два, это были бы PeaZip или 7-Zip , – отличные и совершенно бесплатные программы, поддерживающие формат ZIP.
Если вы не хотите использовать программу для открытия ZIP-файла, многие онлайн-сервисы также поддерживают этот формат. Онлайн-сервисы, такие как WOBZIP, Files2Zip.com и B1 Online Archiver, позволяют просто загрузить свой ZIP-файл, чтобы просмотреть все файлы внутри, а затем загрузить один или несколько из них по отдельности.
Я рекомендую использовать онлайн-сервисы для работы с ZIP-архивом только в том случае, если ZIP-файл имеет небольшой объём. Загрузка большого ZIP-файла и управление им в интернете, вероятно, займет у вас больше времени и энергии, чем просто загрузка и установка автономного инструмента, такого как 7-Zip.
Вы также можете открыть ZIP-файл на большинстве мобильных устройств. Пользователи iOS могут установить iZip бесплатно, а пользователи Android получат возможность работать с файлами ZIP через B1 Archiver или 7Zipper.
Файлы ZIPX – это расширенные файлы Zip, которые создаются и открываются с помощью WinZip версии 12.1 и новее, а также PeaZip и некоторых других аналогичных программ архивирования.
Как конвертировать ZIP файл
Файлы могут быть преобразованы только во что-то похожего формата. Например, вы не можете конвертировать файл изображения, такой как JPG, в видеофайл MP4, равно как и конвертировать ZIP-файл в PDF или MP3.
Если это сбивает с толку, помните, что ZIP-файлы – это просто контейнеры, которые содержат сжатые версии фактических файлов. Поэтому, если внутри ZIP-файла есть файлы, которые вы хотите преобразовать – например, PDF в DOCX или MP3 в AC3 – вы должны сначала извлечь файлы одним из способов, описанных в разделе выше, а затем преобразовать эти извлеченные файлы с помощью конвертера файлов.
Поскольку ZIP является форматом архива, вы можете легко конвертировать ZIP в RAR, 7Z, ISO, TGZ, TAR или любой другой сжатый файл двумя способами, в зависимости от размера:
- Если размер ZIP-файла небольшой, я рекомендую использовать бесплатный онлайн-конвертер ZIP Convert.Files или Online-Convert.com. Они работают так же, как описанные онлайн-открыватели ZIP, то есть вам нужно загрузить весь ZIP на сайт, прежде чем он может быть конвертирован.
- Чтобы конвертировать большие ZIP-файлы, для загрузки которых на сайт потребуется гораздо больше времени, вы можете использовать Zip2ISO для конвертации ZIP в ISO или IZarc для конвертации ZIP во множество различных форматов архивов.
Если ни один из этих методов не работает, попробуйте один из бесплатных конвертеров файлов, чтобы преобразовать ZIP-файл в другой формат файла. Особенно мне нравится Zamzar, который может конвертировать ZIP в 7Z, TAR.BZ2, YZ1 и другие форматы архивов.
Дополнительная информация о файлах ZIP
Если вы защищали паролем ZIP-файл, но затем забыли пароль, вы можете использовать взломщик паролей, чтобы удалить пароль и восстановить доступ к вашим файлам.
ZIP Password Cracker Pro – одна из бесплатных программ, которая использует метод «грубой силы» для удаления пароля ZIP-архива.
Некоторые ZIP-файлы могут иметь имя файла с другим расширением файла перед окончательным расширением zip . Просто имейте в виду, что, как и для любого типа файла, самое последнее расширение определяет, что это за файл. Например, Photos.jpg.zip по-прежнему является файлом ZIP, потому что JPG предшествует ZIP. В этом примере архив, вероятно, назван так, потому что внутри хранит изображения формата JPG.
Некоторые программные средства резервного копирования создают резервные копии файлов в формате ZIP, чтобы они сжимались для экономии места, собирались вместе для более удобного поиска и содержались в общем формате, чтобы можно было открывать резервную копию даже без исходного программного обеспечения для резервного копирования. Одной из таких программ, которая делает это, является COMODO Backup.
Чтобы создать ZIP-файл в Windows, щелкните правой кнопкой мыши файлы и/или папки, которые должны находиться в архиве, а затем выберите Отправить в → Сжатую (заархивированную) папку. Чтобы заархивировать файлы/папки в macOS, щелкните их правой кнопкой мыши и в меню выберите «Сжать элементы », чтобы создать файл Archive.zip.
ZIP-файл может иметь размер от 22 байт до 4 ГБ. Этот предел в 4 ГБ применяется как к сжатому, так и к несжатому размеру любого файла в архиве, а также к общему размеру ZIP-файла. Создатель ZIP – Phil Katz PKWARE Inc. – представил новый формат ZIP под названием ZIP64, который увеличивает ограничение размера до 16 EiB (около 18 миллионов ТБ).
Источник: windows-school.ru
Создание SFX архива
Нередко при работе над автоматической установкой приложений возникает необходимость создать бесключевой самораспаковывающийся архив (в дальнейшем я буду использовать «SFX», так короче). Как правило, SFX архивы позволяют значительно сэкономить место на CD. Например, если приложение не требует установки, то его можно поместить в $OEM$Progs и оно будет автоматически скопировано в Program Files.
Однако, аналогичной цели можно достичь запаковав приложение в SFX, который распакует содержимое в нужную папку. Область применения SFX не ограничивается приложениями, не требующими установки.
Можно без проблем упаковать приложение, запакованное одним из распространенных инсталляторов и сконфигурировать SFX таким образом, что после распаковки будет запущена установка приложения с нужными ключами. Еще одним преимуществом SFX архивов является то, что в некоторых случаях они дают возможность не просто автоматизировать, но и полностью скрыть процесс и прогресс инсталляции от конечного пользователя. Для примера рассматривается упаковка Adobe Reader 7.0. Несмотря на то, что с относительно недавних пор приложение можно устанавливать с соответствующими ключами без особых проблем, только SFX позволяет установить приложение абсолютно незаметно.
Подготовка к созданию SFX
Вне зависимости от того, что вы будете использовать для создания SFX, различий в подготовке не будет. Если вы просто хотите запаковать папку с файлами, то никакой подготовки не требуется. А вот приложения иногда приходится распаковывать. В случае с Adobe Reader 7 используется Install Shield с Basic MSI, причем все это еще и запаковано в некий FEAD Optimizer.
Надо запустить исполняемый файл Adobe, дождаться пока FEAD Optimizer закончит распаковку и найти папку с файлом Adobe Reader 7.0.msi (она может быть в %ProgramFiles%Adobe, например). Теперь нужно запустить файл setup.exe с ключом /a для создания административной установки. В появившемся диалоговом окне нужно указать папку, в которой по окончании будут находиться все нужные нам файлы. Теперь можно переименовать Adobe Reader 7.0.msi в, скажем, Adobe7.msi и приступать к упаковке в SFX архив. Мы рассмотрим создание SFX архивов при помощи WinRAR | 7-Zip | SFX Creator
WinRAR
WinRAR — не нуждающийся в представлении архиватор. Он обладает широкими возможностями для создания бесключевых SFX. С его помощью можно создать незаметный (silent) инсталлятор, который распакует содержимое SFX в заданную папку, выполнит заранее указанную команду, а по окончании установки может удалить распакованные файлы.
Помимо всего WinRAR умеет добавлять элементы в меню Пуск, помещать ярлыки на Рабочий стол, а также задавать архиву иконку по вашему выбору. Я рассмотрю только базовые возможности программы, а с остальными вы без труда разберетесь при помощи справки. Итак, запустив архиватор, мы переходим в папку, в которой находится административная установка Adobe.
Выделяем все файлы и жмем Добавить
Именуем архив по желанию, отмечаем создание SFX и выбираем максимальный уровень сжатия. Теперь надо сконфигурировать параметры SFX. Для этого на вкладке Дополнительно жмем Параметры SFX.
На вкладке Общие указываем команду для распаковки и переходим на вкладку Режимы:
Здесь мы указываем распаковку во временную папку (что повлечет за собой автоматическое удаление распакованных файлов по окончании установки), скрытый режим и перезапись всех файлов. Перейдя на вкладку Комментарий, мы видим все параметры, которые только что сконфигурировали через графический интерфейс.
В принципе, можно было сразу перейти на эту вкладку и напечатать комментарий вручную или загрузить из заранее подготовленного текстового файла. Примечание Поскольку мы запаковываем приложение, имеющее собственный инсталлятор, то распаковка во временную папку вполне оправдана (параметр TempMode).
Если же вы просто хотите распаковать файлы в нужную вам папку, то на вкладке Общие нужно указать путь (можно использовать системные переменные), и соответственно, не использовать TempMode. Вот и все. Теперь осталось нажать ОК пару раз и спустя некоторое время у нас будет SFX, который совершенно незаметно установит Acrobat Reader. Преимущества: абсолютно незаметная (silent) установка, возможность распаковки файлов в заданную папку, возможность добавления элементов в меню Пуск и ярлыков на рабочий стол, выбор иконки для архива.
Недостатки: стоит $30.
7-Zip
7-Zip — бесплатный архиватор, распространяющийся по лицензии GNU LGPL. Если вы с ним не знакомы, то более подробную информацию вы найдете на сайте 7-Zip. С его помощью можно создавать бесключевые SFX, хотя процесс их создания несколько длиннее, чем у WinRAR. Для начала нужно запаковать содержимое нашей папке в 7-Zip архив. Сделать это можно через 7-Zip файл-менеджер.
Запустив его, мы переходим в папку, в которой находится административная установка Adobe. В эту же папку нужно положить файл StartX.exe (его назначение я объясню ниже).
Выделяем все файлы и жмем Добавить
Именуем архив по желанию (скажем, Adobe7.7z), выбираем формат 7-Zip, максимальный уровень сжатия и жмем ОК. На выходе получаем файл Adobe7.7z, из которого нам предстоит сделать SFX. Теперь нужно создать конфигурационный файл для SFX. Его можно сделать в Блокноте. Единственное, но обязательное условие — он должен быть в кодировке UTF-8. В нашем случае он будет выглядеть так:
Выглядит сложно, но сейчас все прояснится. Первая и последние строки просто обозначают начало и конец конфигурационного файла. Средняя строка — команда, которая будет выполнена после распаковки архива. Непосредственно команда заключается в кавычки и помещается после RunProgram=. Утилита StartX.exe является эквивалентом консольной команды START и поддерживает такие же ключи.
Ее наличие необходимо для установки MSI пакета, извлеченного из 7-Zip SFX. Если попытаться сделать нечто вроде RunProgram=»Adobe7.msi /qn», то запуск завершится ошибкой. Два обратных слэша () просто предваряют кавычки, находящиеся внутри команды. Сохраняем конфигурационный файл с именем config.txt в ту же папку, где Adobe7.7z, и переходим к завершающей стадии создания SFX.
Из инсталляционной папки 7-Zip нужно взять SFX модуль 7zS.sfx и скопировать его к файлам Adobe7.7z и config.txt. Можно сжать модуль утилитой UPX. Это уменьшит размер модуля примерно со 131 кб до 58 кб. Делается это командой
upx —best 7zS.sfx
Достаточно это сделать один раз, и можно использовать сжатый модуль в дальнейшем. Примечание . Примите к сведению, что некоторые антивирусные программы ошибочно воспринимают SFX модуль, сжатый при помощи UPX, как вирус. Если вам нужно гарантировать успешную распаковку SFX архива в любых условиях, не сжимайте модуль при помощи UPX. Теперь, когда в одной папке собраны все три файла (adobe7.7z, config.txt и 7zS.sfx), нужно из командной строки выполнить следующую команду
COPY /b 7zs.sfx + config.txt + adobe7.7z adobe7.exe
Через мгновение в папке появится файл adobe7.exe. Это и есть наш SFX. Его запуск инициализирует распаковку архива во временную папку, запуск команды из конфигурационного файла, и удаление распакованных файлов по окончании установки.
Модифицированный SFX модуль для 7-Zip
Оригинальный 7-Zip SFX модуль не дает возможности сделать распаковку абсолютно незаметной. В процессе распаковки пользователь видит вот такое диалоговое окно и даже может прервать установку нажатием на кнопку Cancel. Этой проблемы можно избежать, воспользовавшись SFX модулем, который модифицировал участник конференции OSZone Олег Щербаков aka Oleg_Sch.
Вы можете загрузить модифицированный модуль со страницы автора, где вы также найдете справку и исходный код. В справке описаны все новые функции и примеры использования (там много интересного). Так что на этой странице я ограничусь лишь примером конфигурационного файла, который полностью скроет диалоговое окно распаковки.
Вообще-то, для модифицированного модуля утилита StartX не нужна, и можно было бы обойтись RunProgram=»Adobe7.msi /qn» . — Любопытно, что в данном случае 7-Zip продемонстрировал лучшее сжатие, чем WinRAR. Размер 7-Zip SFX (даже с утилитой StartX.exe) оказался 20893 кб против 23825 кб у WinRAR SFX. Oднако, недостатком родного SFX модуля 7-Zip является невозможность сконфигурировать бесключевую распаковку SFX в заданную папку. Модифицированный модуль Олега, позволяет указать папку распаковки в конфигурационном файле и избавляет 7-Zip от данного недостатка. Преимущества: бесплатен, высокая степень сжатия; а с модифицированным SFX модулем доступны абсолютно незаметная (silent) установка и возможность распаковки файлов в заданную папку, добавление элементов в меню Пуск и ярлыков на рабочий стол, а также многие другие функции.
Недостатки: нет возможности выбора иконки для архива (планируется исправить в будущих версиях модифицированного модуля Олега).
SFX Creator
SFX Creator — бесплатная программа, написанная одним из участников конференции OSZone.net — K.A.V.
Программа написана специально для решения задач по созданию полноценного SFX архива и обладает большими возможностями для создания бесключевых SFX. С ее помощью можно создать как незаметный (silent) инсталлятор, так и инсталлятор с графическим интерфейсом.
- Поддержка всех (ну или практически всех) переменных системных/пользовательских директорий
- Выбор типа сжатия (LZMA — данный тип компрессии применяется в архиваторе 7-Zip), BZIP2, ZLIB
- Создание ярлыков для файлов
- Импорт REG-файлов после распаковки файлов
- Выполнение приложений до и после распаковки ваших файлов
- Выполнение операций в реестре (запись/удаление параметров, удаление разделов)
- Выполнение файловых операций (копирование/удаление файлов, создание/удаление директорий)
- Возможность создать программу удаления (с удобным добавлением информации в апплет «Установка и удаление программ»)
- Возможность установить свою иконку на SFX архив
- Возможность добавить информацию о версии файла
- Возможность выполнить собственные функции, написанные на языке NSIS перед и после распаковки файлов
- Возможность перед распаковкой ваших файлов проверить наличие установленного ПО и выполнить определённые действия, если вас не устравивает результат проверки (например если версия ПО ниже необходимой, можно прекратить установку и/или показать сообщение пользователю)
- Возможность распаковать ваши файлы в каталог, который указан в каком-либо ключе реестра
- Регистрация библиотек при распаковке файлов (и возможность отменить регистрацию при удалении приложения)
- Возможность при запуске/завершении показать пользователю информационное сообщение
- Вы можете создавать распаковщик (практически уже пакет инсталлятора) с графическим интерфейсом. Вам предлагается использовать 2 типа интерфейса на выбор
- Возможность показа вашего изображения перед запуском процесса распаковки файлов
- При создании проекта с графическим интерфейсом, вы можете добавить отображение изображения на задний план
Источник: www.oszone.net