Распаковщик RAR-архивов - UnRAR 1C

Компонента использует последнюю версию бесплатной библиотеки "unrar.dll" с официального сайта автора архиватора RAR. Библиотека уже встроена во внешнюю компоненту, ничего отдельно скачивать и устанавливать не нужно, в том числе и сам архиватор. Поддерживаются архивы формата RAR4 и RAR5 (многотомные архивы, самораспаковывающиеся архивы, архивы закрытые паролем). Операции, которые можно выполнить над архивом с помощью данной компоненты:

  1. Получение списка файлов в архиве с информацией о каждом файле;
  2. Тестирование архива;
  3. Извлечение из архива как всех, так и отдельных файлов с сохран программу 1С ением и без сохран программу 1С ения путей файлов в указанный каталог;
  4. Получение комментария архива;
  5. Получение атрибутов архива;
  6. Получение номера версии используемой библиотеки "unrar.dll";

Внешняя компонента написана на Delphi по технологии Native API, имеет 6 методов и 2 свойства. Далее английское и русское имя метода/свойства буду разделять символом "|".

Методы:

1. DLLVersion|ВерсияDLL() - Возвращает версию файла "unrar.dll";
Параметры: Нет;
Возвращаемое значение: Тип Число. Версия файла "unrar.dll".

2. CommentArchive|КомментарийАрхива(<Строка>) - Возвращает комментарий архива;
Параметры:
<Строка> - Тип Строка. Полное имя файла архива;
Возвращаемое значение: Тип Строка. Комментарий архива.

3. ListFilesArchive|СписокФайловАрхива(<ИмяФайлаАрхива>, <Комментарий>) - Возвращает список файлов архива;
Параметры:
<ИмяФайлаАрхива> - Тип Строка. Полное имя файла архива;
<Комментарий> - Тип Строка. Выходной параметр, необязательный. В качестве значений необходимо передать переменную, в которую будет помещен комментарий архива;
<Атрибуты> - Тип Строка. Выходной параметр, необязательный. В качестве значений необходимо передать переменную, в которую будет помещена строка атрибутов вида "0;1;0;1;0;1;0;1;0". По сути можно считать сто строка в формате CSV - 9 колонок, 1 строка. Пример парсинга смотреть в обработчетыотконфигурациике;
Возвращаемое значение: Тип Строка. Список файлов архива в формате CSV. Пример парсинга смотреть в обработчетыотконфигурациике.

4. TestArchive|ТестАрхива(<ИмяФайлаАрхива>, <ОписаниеОшибки>) - Выполняет тест архива;
Параметры:
<ИмяФайлаАрхива> - Тип Строка. Полное имя файла архива;
<ОписаниеОшибки> - Тип Строка. Выходной параметр. В качестве значений необходимо передать переменную, в которую будет помещена строка с описание ошибки в случае возникновения ошибки в процессе тестирования;
Возвращаемое значение: Тип Булево. Значение Истина - в случае успешного тестирования. Значение Ложь - в случае возникновения ошибки в процессе тестирования, в параметр <ОписаниеОшибки> будет помещена строка с описание ошибки.

5. ExtractArchive|РаспаковатьАрхив(<ИмяФайлаАрхива>, <ИмяКаталога>, <Сохран программу 1С ятьПути>) - Распаковывает все файлы архива в указанный каталог;
Параметры:
<ИмяФайлаАрхива> - Тип Строка. Полное имя файла архива;
<ИмяКаталога> - Тип Строка. Полное имя каталога для распаковки файлов архива;
<Сохран программу 1С ятьПути> - Тип Булево. Если Истина, то при распаковке будут сохран программу 1С ены все пути файлов;
Возвращаемое значение: Отсутствует.

6. ExtractFilesArchive|РаспаковатьФайлыАрхива(<ИмяФайлаАрхива>, <ИменаФайлов>, <ИмяКаталога>, <Сохран программу 1С ятьПути>) - Распаковывает указанные файлы архива в указанный каталог;
Параметры:
<ИмяФайлаАрхива> - Тип Строка. Полное имя файла архива;
<ИменаФайлов> - Тип Строка. Имена файлов в архиве, которые необходимо извлечь;
<ИмяКаталога> - Тип Строка. Полное имя каталога для распаковки файлов архива;
<Сохран программу 1С ятьПути> - Тип Булево. Если Истина, то при распаковке будут сохран программу 1С ены все пути файлов;
Возвращаемое значение: Отсутствует.

Свойства:

1. Version|Версия - Тип Строка. Содержит версию компоненты в виде строки. Данное свойство доступно только для чтения.

2. Password|Пароль - Тип Строка. Содержит пароль для распаковки архива. Если на архив не установлен пароль, то значение свойства игнорируется. Данное свойство доступно только для записи.

Примеры использования всех методов и свойств приведены в прилагаемых обработчетыотконфигурацииках.

 
 Обновление 2021/12/24 v2.0

    1. Добавлена поддержка 64-битной платфор внешние компонентымы;
    2. Обновлена библиотека UnRAR до версии 8;
    3. Расширен метод ListFilesArchive|СписокФайловАрхива - добавлен 3-й параметр в который помещаются атрибуты архива. Кроме того выходные параметры (2-ой и 3-ий) стали не обязательными, т.е. можно не получать комментарий и атрибуты, если это не требуется (писание метода в публикации обновлено);
    4. Доработконфигурациианы демонстрационные обработчетыотконфигурациики - добавлена демонстрация работконфигурацииы с атрибутами архива, устранены мелкие недочеты и ошибки;
    5. Внешняя компонента собрана на последней версии компилятора, почищен и оптимизирован код;

Обработконфигурациики и внешняя компонента тестировались на платфор внешние компонентым Инфостарт ах 8.3.10.2650 (x86), 8.3.17.1549 (x86) и 8.3.20.1613 (x64).

Так же, кому интересно: Внешняя Native компонента для сжатия/распаковки файлов по алгоритму Deflate, в том числе сжатия/распаковки архивов в формате GZip.

Скриншоты


1.png

2.png

3.png

Файлы

Наименование Файл Версия Размер Кол. Скачив.
UnRAR1C (обычное приложение)
.epf 846,75Kb
11
.epf 2.0 846,75Kb 11 Скачать
UnRAR1C УФ (управляемое приложение, асинхронный режим)
.epf 1,32Mb
19
.epf 2.0 1,32Mb 19 Скачать

Полная версия

© ООО "Инфостарт", 2006-2023 www.infostart.ru