engrus

7-Zip плагины\Proxy7z

Благодаря высокому уровню сжатия программа 7-Zip и ее формат архивов 7z нашли широкое распространение в современном мире, став одним из де-факто стандартов сжатия наряду с форматами zip и rar. Многие архиваторы и файловые менеджеры имеют поддержку распаковки 7z архивов "из коробки".

Помимо всего прочего программа 7-Zip поддерживает собственную систему плагинов. Любой разработчик может создать плагин, с помощью которого 7-Zip сможет открывать как архив дополнительный формат данных, например образы ExFat дисков или образы CD-дисков. Или плагин-кодек, который может быть использован при упаковке данных в стандартный 7z файл, например, все более распространяющийся метод сжатия Zstandard.

К сожалению, авторы архиваторов и файловых менеджеров в своем большинстве делают минимальную поддержку формата 7z с использованием библиотеки 7z.dll или 7zxa.dll и полностью игнорируют возможность подключения сторонних плагинов. И в этом случае все 7z файлы, созданные с использованием дополнительных методов сжатия, будут не извлекаемы в этих программах. И в качестве решения этой проблемы предлагается использование библиотеки Proxy7z.

Proxy7z – это библиотека, предназначенная для своеобразного обмана приложения, использующего библиотеки 7z.dll или 7zxa.dll. Proxy7z берет на себя все функции работы с дополнительными плагинами, и программа даже не догадается, что она научилась понимать больше методов сжатия.

Общий алгоритм использования Proxy7z таков:

  1. Переименовать используемый программой файл 7z.dll или 7zxa.dll в 7z.dll.bak или 7zxa.dll.bak (на случай, если потребуется возврат к исходному состоянию).
  2. Скачать архив с библиотекой по ссылке ниже.
  3. Извлечь из архива файл 7z.32.dll или 7z.64.dll (в зависимости от разрядности программы) и скопировать его в папку, где лежит оригинальный файла 7z.dll или 7zxa.dll.
  4. Переименовать скопированный файл в 7z.dll или 7zxa.dll (в зависимости от того, какой файл использовался программой).
  5. В этой же папке создать папку 7zPlugins
  6. В папку 7zPlugins нужно скопировать библиотеку 7z.dll из программы 7-Zip (не забывайте о правильной разрядности). Если программа исходно использует 7z.dll, то можно воспользоваться и этим файлом.
  7. В папку 7zPlugins нужно скопировать нужные вам дополнительные плагины.

После этого программа будет работать с Proxy7z, как с оригинальной библиотекой, а Proxy7z в свою очередь будет переадресовывать все вызовы по нужным плагинам. Для программы все это выглядит полностью прозрачно.

Актуальная версия

  • Версия плагина: 1.0
  • Размер установочного дистрибутива: 50 KB
  • Дата установочного дистрибутива: 08 May 2020