|
Delphi Лозовский Александр Xakep, номер #054, стр. 054-084-1 (klouniz@mail.ru) Свой ZIP на Delphi. Быстро, качественно, недорого! После выхода в свет Delphi 2 количество компонентов, содержащих функции разных архиваторов, стало увеличиваться в геометрической прогрессии. Уж не знаю, зачем это надо, но разнообразие стало пугающим: размер их варьировался в пределах от 30 Кб до 2 Мб, цена - от 0 до 299 долларов, а функций... В общем, очень много. До Delphi 4 эти компоненты постепенно прогрессировали и пополнялись новыми фичами, но вот потом наступил резкий спад. До 6 версии дожили, по моим подсчетам, около 4-5 достойных представителей. Это действительно монстры. Правда, XEEDZIP, который теперь весит 16 Мб, я так и не рискнул скачать, но в целом это функциональные и дорогие продукты, вполне достойные такого нищего кодера, как я :). Сегодня мы будем пользоваться компонентом (вернее, целой коллекцией компонентов) под названием ZipTV. Я выбрал его потому, что там есть все, что нужно для работы с архивами. Он сравнительно мало весит и не содержит ничего лишнего. Зато есть кое-что и для настоящего ][. В конце концов, в нем отлично сочетаются простота и функциональность - научиться его использовать проще, чем двигать черепашку в LogoWr, а написать с его помощью WinZip - дело 10 минут. Нужно только немного мозгов, ловкость рук и никакого мошенничества. Реквизит Можешь забрать его с http://www.ziptv.com/download/ZipTV_u6_5.3.0.exe (он весит 2.08 Мб) или заглянуть на наш диск. Там в качестве бонуса мы положили тебе еще несколько компонентов. Так сказать, для домашнего изучения. Инсталляция его проходит безо всяких проблем. Главное - ставить его в пустую директорию (во избежание жертв), а после установки убедиться (посмотрев в tools-> environment options-> вкладка library) в том, что путь к этой самой директории там прописан. Иначе потом придется выяснять, почему компонент есть, а ничего не работает, и что это еще за "err_msgs.res" :). Если же проблемы все же возникнут, не спеши писать мне или разработчикам. Попробуй сначала почитать install.txt. После установки можно полюбоваться на палитру компонентов. Там прибавились целых три закладки (ZTV Tools, ZTV Compress, ZTV Decompress), содержащие суммарно 35 (тридцать пять) компонентов! Вот это, я понимаю, королевский набор для работы с архивами! ZTV Compress 1) TBlackHole. Предназначен для создания blackhole (*.bh) архивов. 2) TGZip. Позволяет создавать gzip архивы. Очень полезная вещь для юниксоидов :). 3) TJar, TLha, TCab, TTar. Соответственно, создают Jar, Lha и Tar архивы. 4) TUUEEncode. Создает UUE/XXE кодированные файлы для емайла. 5) TZip. Собственно, самый главный компонент в нашем обзоре. Он создает PkZip совместимые ZIP архивы. После того, как я рассказал, зачем, собственно, нужны компоненты этой вкладки, возникает резонный вопрос - как их использовать? Также неплохо бы рассказать о некоторых методах, свойствах и событиях. Создается архив довольно просто. Надо присвоить свойствам ArchiveFile (тип string, это имя будущего или имеющегося архива) и FileSpes (тип TStrings, содержит список файлов, подлежащих архивации; также можно использовать маски типа *.*) вразумительные значения, а затем с помощью метода Compress запустить процесс запаковки. Он вернет тебе переменную типа integer. Это и будет количество заархивированных файлов. Также можно добавить еще и свойство Password. Это будет пароль для архива. Будь осторожен с прописными и строчными буквами - они различаются. |