gifts2017

Работа с zip-архивами

Опубликовал Андрей (Лев) в раздел Администрирование - Архивирование (backup)

Работа с zip-архивами с помощью UtilZip.dll. Лично мной использовалось для работы с файлами обмена МОД.

Пример использования UtilZip.dll в 1С.

VARIANT_BOOL Open(BSTR archive)

Открывает архивный файл с именем archive. Возвращает TRUE - и существует такой файл и он верного формата. FALSE - создан новый файл.

Close(Variant_BOOL execute=TRUE)

Закрывает архивный файл и выполняет. При значении execute=TRUE, выполняются все операции добавления, удаления и извлечения файлов, иначе эти операции не выполняются.

Execute(Variant_BOOL refreshEntries = FALSE)

Выполняет операции добавления, удаления и извлечения файлов. При refreshEntries=TRUE, обновляется коллекция файлов в архиве entries.

AddFile(BSTR filename)

Добавляет в архив файл filename. Реальное добавление будет выполнено при вызове Execute или Close.

ExtractFile(VARIANT item)

Извлекает файл из архива в директорию ExtractDirectory. Значение item может быть числом или строкой. Если item число, то мы извлекаем файл с таким номером из коллекции entries. Если item строка, то мы извлекаем файл с таким именем. Реальное извлечение будет выполнено при вызове Execute или Close.

DeleteFile(VARIANT item)

Удаляем файл из архива. Значение item то же, что и в ExtractFile. Реальное удаление будет выполнено при вызове Execute или Close.

IZipEntries Entries[R]

Коллекция файлов, находящихся в архиве. Описание работы с коллекцией смотрите ниже. Возвращает объект из коллекции файлов IZipEntries.

BSTR Name[R]

Наименование файла архива.

BSTR Comment [RW]

Комментарий к файлу архива. Комментарий можно получить и установить. Реальная установка комментария происходит при добавлении или удалении файла.

BSTR ExtractDirectory [RW]

Директория для извлеченных файлов. По умолчанию устанавливаются Temp директория Windows.

VARIANT_BOOL Overwrite [RW]

Переписывать ли существующий файл при извлечении из архива. TRUE - переписывать не спрашивая разрешения. FALSE - спрашивать позволения.

VARIANT_BOOL Recurse [RW]

углубляться ли в поддиректории при добавлении файлов. TRUE - углубляться, FALSE - нет. По умолчанию - TRUE.

VARIANT_BOOL SavePath [RW]

Сохранять ли полный путь к файлу (TRUE) или только имя файла (FALSE). По умолчанию TRUE.

Скачать файлы

Наименование Файл Версия Размер
- 123
.1246362264 48,00Kb
25.09.09
123
.1246362264 48,00Kb Бесплатно
dll 120
.1246362399 296,00Kb
25.09.09
120
.1246362399 296,00Kb Бесплатно

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Вячеслав Кадацкий (marsohod) 02.07.09 00:34
Спасибо. Еще бы als-файл для полного счастья ...
2. Rustam Avazov (avazov) 27.08.09 15:27
а как посмтреть имя распокованного файла
3. Владимир (gvinas) 26.04.11 20:37
dll супер! а реально ее доработать для установки пароля на zip файл?
4. romanuil romanuil (romanuil) 18.03.12 18:33
UtilZip.dll нужно регистрировать в системе.
"Загрузчик ВК" не определяет идентификатор в библиотеке(Не удалось получить идентификатор ВК).
Обойти как-то можно использую програмно только 1С без регистрации в реестре?
5. arjuna (arjuna) 23.09.13 02:05
Глючная обработка , работает через раз.