Компонента ActiveX Zip, интерфейс использования, VFP8
Предлагаю для рассмотрения еще один вариант работы с архивами Zip,
1) вся основная информация: http:www.hdse.org/activexzip/
2) компонента свободно-распространяемая
3) основные недостатки:
- стартовый банер
- архивация подкаталогов, которые удовлетворяют маске
(если они не удовлетворяют маске, то не архивируются)
- пустые подкаталоги упаковываются, но не распаковываются
- просмотр архивов при помощи WinZip,WinRar некорректен
4) разработка и тестирование: VFP8 (SP1)
5) используются возможности
- Bindevent(...)
- Define Class ... OlePublic Implements ... In ...
подробности в файлах:
- ReadMe.txt
- ActiveXZip.chm
- Zip_Objects.prg
Пример: форма Test.scx
Принимаются Пожелания, замечания,вопросы
ShmSoft@rol.ru
----------------------------------------------------------
Основные элементы Архиватора
----------------------------
(пример использования - форма Test)
Некоторые замечания
-------------------
1) Наименование объекта : 'hdsecompression.activexzip'
2) Основные методы:
addFile(filespec As String, - добавить файлы в архив
recursive As Logical,
storepaths As Logical,
password As String) As Void
Close() - закрыть открытый ранее архивный файл (Open)
create(zipFile As String) As Void - создать новый архив Zip
deleteFile(item As Variant) As Void - удалить файл из архива
extract(item As Variant, - извлечь файл из архива
extractDir As String,
password As String) As Void
getCount(count As Long) As Void - вернуть количество элементов в архиве
нумерация файлов считается с 0
getFileDetails(item As Variant) - прочитать данные о файле в архиве
As Void по номеру файла (элемента) 0-n
onFileDetails(file As String, - событие, расшифровывающее данные о файле
passprotected As Logical, требуется механизм связывания событий
uncompressedSize As Long, Bindevent(...)
compressedSize As Long)
As H Result
onFileProcessed(file As String, - событие, происходящее при сжатии файла, или разжатии,
successfullyArchived As Logical, уточняющее также ошибку упаковки/распаковки
failDescription As String)
As H Result
open(zipFile As String) As Void - открыть файл архива
showSplash(screenX As Long, - показать Лицензионный Банер, (не удалось обойти)
screenY As Long,
size As SplashSizeRange)
As Void
compressString(uncompressed As String, - сжатие символьной строки, не тестировалось
compressed As Variant) As Void
uncompressData(compressed As Variant, - разжатие символьной строки, не тестировалось
uncompressed As String) As Void
Замечание 1.: Параметры в данные методы-функции передаются по-ссылке. Возвраты функций
не анализировались.
Замечание 2.: Технологические моменты - в такстах методов примера TEST
Уверенно работает с шаблоном *.*
-----------------------------
Shm-Soft, ноябрь, 2004
-----------------------------
Вложенные файлы
# |
Название |
Тип файла |
Размер |
---|---|---|---|
1 | 451axzip | .zip | 194,54 КБ |