-----BEGIN PGP SIGNED MESSAGE----- XPACK Программа для сжатия исполнимых файлов и ══════╗ файлов данных, а также создания/восстановления ║ сжатых образов дискет и архивов ╚═════════════════════════════════════════════════ Copyright (c) 1995-1998 by JauMing Tseng (dox translation based on v1.66 by Dmitry Yerokhin) ЧТО ТАКОЕ XPACK? ~~~~~~~~~~~~~~~~ XPACK - это компрессор исполнимых файлов EXE/COM/SYS. Эта программа сжимает большинство исполнимых DOS-файлов. Сжатые программы занимают меньше места на диске, поскольку их объем становится значительно меньше, но работают они ТОЧНО так же, как и прежде. Кроме того, XPACK позволяет создавать сжатые образы дискет для передачи их по сетевым коммуникациям. Сжатые образы дискет можно передавать с помощью модема по обычным телефонным линиям или по любым другим электронным сетям. С помощью XPACK можно создавать архивы образов дискет на жестких дисках или стримерах. Гарантируется полная идентичность содержимого дискет, включая всю структуру каталогов, отметки о времени и дате всех файлов и каталогов. Этот метод также годится и для архивирования загружаемых (системных) дискет. XPACK можно также использовать как мощный компрессор файлов с резидентным (находящимся в ОЗУ) "прозрачным" распаковщиком (Xpack OnLine DeCompression System), с помощью которого доступ к сжатым файлам происходит без всякого труда. Это осуществляется путем перехвата вызовов DOS, что позволяет приложениям читать сжатые файлы в точности так же, как и раньше. Просто вставьте в файл AUTOEXEC.BAT команду для загрузки XPACK ("XPACK -z"), и забудьте об этом. Резидентная часть Xpack OnLine DeCompression System занимает 4 Кбайт верхней памяти и 32 Кбайт памяти EMS. СИСТЕМНЫЕ ТРЕБОВАНИЯ ~~~~~~~~~~~~~~~~~~~~ XPACK работает на любой IBM-совместимой машине, имеющей 192 Кбайт свободной памяти DOS. Для сжатия метод 4 требует дополнительно 192 Кбайт, метод 5 требует дополнительно 147 Кбайт. Любой файл, сжатый с помощью XPACK, может быть запущен на любой IBM-совместимой системе: XT, AT, 80286, 80386, 80486, Pentium или Pentium Pro; Intel и не-Intel. ИСПОЛЬЗОВАНИЕ XPACK ~~~~~~~~~~~~~~~~~~~ Введите команду: XPACK [опции] имя_файла где "имя_файла" - это имя сжимаемого исполнимого файла. По умолчанию XPACK будет обрабатывать только исполнимые файлы, поэтому если вы не укажете расширение файла, будут подразумеваться ".EXE", ".COM" или ".SYS". Имя файла может включать спецификации диска и пути, а также символы шаблона (* или ?). Значение разных опций объясняется ниже. После обработки XPACK создает исполнимый файл, который: (а) будет меньше оригинального по размеру и (б) будет работать как и прежде, без какой-либо заметной разницы в скорости выполнения. Для сжатия компьютеру может понадобиться несколько секунд. Если вы нетерпеливы, то прервать процесс можно нажатием клавиши ESC. С помощью XPACK можно сжать не каждый EXE-файл (например, EXE-файл с внутренним оверлеем можно упаковать только с опцией /g). Именно поэтому программа создает страховочные резервные копии. Так, оригинальный файл FILENAME.EXE переименовывается в FILENAME.OLE. Если после упаковки что-нибудь будет не так, вы можете восстановить оригинальный файл, введя следующие две команды в приглашении DOS: COPY FILENAME.OLE FILENAME.EXE DEL FILENAME.OLE (Файлы .COM и .SYS всегда упаковываются без проблем.) ОПЦИИ ~~~~~ Любая опция должна вводиться после "XPACK" и перед "имя_файла". При указании всех опций регистр символов не имеет значения. Опции должны разделяться пробелами и начинаться либо с дефиса ('-'), либо со слэша ('/'). Далее приводится описание опций командной строки: -? Этот ключ вызывает опцию -h -h С этим ключом XPACK выводит на консольное устройство DOS экраны подсказки. Чтобы сохранить информацию в файле, можно дать команду "XPACK /? > XPACK.HLP". -4 Этот ключ устанавливает наиболее режим наиболее плотной упаковки (метод 4). -5 Если указан этот ключ, то используется метод упаковки 5 (он принят по умолчанию), которому свойственны: менее высокая, чем у метода 4, степень сжатия, наиболее быстрая упаковка, наиболее быстрая распаковка, наименьший размер модуля SFX. -x Восстановить (распаковать) сжатый файл .COM или .SYS. -f С этим ключом XPACK будет конвертировать файл даже в том случае, если после сжатия результат окажется больше исходного файла. (Эта возможность вряд ли нужна многим пользователям.) -o Этот ключ отменяет создание страховочных копий файлов типа FILENAME.OLE. (Используйте его только тогда, когда вы уже убедились, что XPACK сжимает файл(ы) успешно.) -g С этим ключом XPACK будет дописывать к упакованному файлу оверлей (если таковой имеется). (См. ниже замечание о файлах, не допускающих упаковку.) Без опции -g XPACK не будет пытаться упаковывать EXE-файл, содержащий оверлеи. Опция -g работает не со всеми EXE-файлами, содержащими оверлеи. Она хорошо работает с EXE-файлами, откомпилированными из текстовых (ASCII) файлов с помощью утилиты TURBOTXT (это прекрасная программа, поставляемая с регистрированной версией компилятора пакетных файлов TURBOBAT), оверлейными программами, откомпилированными с помощью TURBO/BORLAND Pascal и Clipper 5.2 с Blink 3.0. -pd Упаковывать файлы как данные, т.е. как файлы данных, которые можно использовать с Xpack OnLine Decompression System, дающей простой доступ к упакованным XPACK файлам данных. -ud Распаковать упакованные XPACK файлы данных. -z Инсталлировать (оставить резидентной) Xpack OnLine DeCompression System. -zr Деинсталлировать (убрать из памяти резидентную часть) Xpack OnLine DeCompression System. -z- Деактивизировать (отключить TSR) Xpack OnLine DeCompression System. -z+ Активизировать (включить TSR) Xpack OnLine DeCompression System. -ux Ультра-распаковщик для некоторых программ, откомпилированных на языках высокого уровня! :)) (Для распаковки оверлейного EXE-файла не забудьте указать полный путь и расширение). (Эта опция не допускает использование символов шаблона! :)) -v- Не добавлять к EXE-файлу защитную антивирусную информацию -c1File1 Добавить в начало EXE-файла комментарий из файла File1 -c2File2 Добавить в конец EXE-файла комментарий из файла File2 (■ В целях оптимизации из файлов 1&2 с комментариями читаются только первые 512 байт) ИСПОЛЬЗОВАНИЕ XPACK ДЛЯ СОЗДАНИЯ/РАСПАКОВКИ СЖАТЫХ ОБРАЗОВ ДИСКЕТ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Введите команду: XPACK опция дисковод: имя_файла где "имя_файла" - это имя файла со сжатым образом дискеты. Если не указать расширение, то будет подставлено ".XDI". Имя файла может содержать информацию о диске и пути. Описание новых опций: -p Упаковать дискету в дисководе: в файл-образ. -u Распаковать образ на дискету в дисководе: из файла. Имя файла может содержать символы шаблона (* или ?). ИСПОЛЬЗОВАНИЕ XPACK ДЛЯ СОЗДАНИЯ/РАСПАКОВКИ СЖАТОГО АРХИВА ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Введите команду: XPACK опция архив [имя_файла] где "имя_файла" - это имена файлов для упаковки. Если не указать расширение архива, то по умолчанию будет принято ".XPA". В имени файла допускается указывать спецификации дисковода, пути и символы шаблона (* или ?). Описание новых опций: -a Добавить файлы в архив -e Извлечь файлы из архива ПРИМЕРЫ ~~~~~~~ Для упаковки всех EXE-файлов в текущем каталоге введите команду: XPACK *.EXE Для упаковки всех EXE-файлов в каталоге C:\PROGS без создания страховочных копий введите команду: XPACK /O C:\PROGS\*.EXE Для упаковки всех исполнимых файлов с использованием метода сжатия 4 введите команду: XPACK /4 * Для сжатия файла BUMF.EXE (откомпилированного из BUMF.TXT с помощью TURBOTXT) введите команду: XPACK -g BUMF Для создания сжатого файла MYDISK.XDI с образом дискеты в дисководе B: введите команду: XPACK -p b: MYDISK.XDI Для распаковки (восстановления) сжатого файла C:\BOOT.XDI с образом на дискету в дисководе A: введите команду: XPACK -u a: C:\BOOT Для упаковки всех файлов в каталоге D:\MYDATA как файлов данных введите команду: XPACK -Pd d:\mydata\* Для распаковки всех сжатых XPACK файлов данных в каталоге E:\MYfile введите команду: XPACK -Ud e:\myfile\*.* Для инсталляции (установки резидентной части) Xpack OnLine DeCompression System введите команду: XPACK -z Для удаления из памяти резидентной части Xpack OnLine DeCompression System введите команду: XPACK -zr Для отключения функций Xpack OnLine DeCompression System введите команду: XPACK -z- Для включения функций Xpack OnLine DeCompression System введите команду: XPACK -z+ Для сжатия всех EXE-файлов в текущем каталоге без добавления антивирусной информации для восстановления просто введите: XPACK -v- *.EXE Для сжатия всех EXE-файлов в текущем каталоге с добавлением в их начала комментария из файла File1 и в концы комментария из файла File2 введите команду: XPACK -c1File1 -c2File2 *.EXE Для добавления всех файлов из каталога f:\MYfile в архив archive введите команду: XPACK -a archive f:\MYfile\*.* Для извлечения файлов из архива archive введите команду: XPACK -e archive ФАЙЛЫ, НЕ ДОПУСКАЮЩИЕ УПАКОВКУ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Некоторые файлы не допускают упаковку с помощью XPACK. К ним относятся: - программы, проверяющие свою контрольную сумму - файлы, внутри которых сохраняются конфигурационные данные - драйверы, которые могут загружаться из файла CONFIG.SYS (например, EMM386.EXE) - некоторые файлы с оверлеями или оверлеи DOS4GW, и т.д... Отдельные оверлейные файлы не могут быть сжаты, так как при сжатии изменяется смещение оверлея, и упакованная программа может его не найти. ФАЙЛЫ WINDOWS И OS/2 ~~~~~~~~~~~~~~~~~~~~ Данная версия XPACK не может упаковавать EXE-файлы Windows или OS/2 нового формата, поскольку в конце этих файлов содержатся ресурсы, которые должны располагаться именно там (например, битовые карты, диалоги, окна, кнопки и значки). Эти ресурсы загружаются не при выполнении файла, а только тогда, когда это требуется Windows или OS/2. Файлы Windows и OS/2 распознаются XPACK автоматически. В мои планы входит попытка добавить функции для сжатия файлов следующих типов: Windows 3.1, Windows 95, OS/2, DOS в защищенном режиме, DOS-оверлеев. (Пожалуйста, подождите :)) РАСПРОСТРАНЕНИЕ XPACK ~~~~~~~~~~~~~~~~~~~~~ Утилита XPACK защищена авторскими правами и может распространяться только при соблюдении следующих ограничений: 1) НЕВЗИМАНИЕ за это денег за исключением оплаты носителя и расходов на пересылку диска. 2) Утилита и документация должны рапространяться вместе и в неизмененной форме. Файлы XPACK.COM, XPACK.DOC и XPACK.BG5 должны оставаться вместе. XPACK можно свободно переписывать на любую BBS, оперативную службу или что-либо подобное, а также помещать на любой CD-ROM. Распространять сжатые исполнимые файлы или образы дискет можно только в том случае, если вы являетесь зарегистрированным пользователем XPACK. ПРОВЕРКА ПОДЛИННОСТИ ~~~~~~~~~~~~~~~~~~~~ Для контроля подлинности вы можете воспользоваться pgp, чтобы проверить электронные подписи. В случае верности сообщения должны быть следующими: ... Good signature from user "JauMing Tseng ". Signature made 1998/??/?? ..... GMT using 2048-bit key, key ID 8A249D7D ... Чтобы получить public key автора, пошлите e-mail по адресу xpa@pcmail.com.tw, в поле Subject укажите: get public key Спасибо:) БЛАГОДАРНОСТИ И ПОЗДРАВЛЕНИЯ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Оптимизировано: http://www.xs4all.nl/~feldmann Документация (XPACK.DOC) пересмотрена John Kiernan, Harald Feldmann. Перевод документации на немецкий (XPACKDEU.DOC): Veit Kannegieser, Karl Loncarek. Перевод документации на французский (XPACKFRA.DOC): Frank Zago. Перевод документации на итальянский (XPACKITA.DOC): Roberto Favaretti. Перевод документации на венгерский (XPACKHUN.DOC): Fds0ft. Перевод документации на русский (XPACKRUS.DOC): Dmitry Yerokhin. Я хочу поблагодарить следующих людей за помощь в тестировании и высказанные предложения: Fred Lu, John Kiernan, ChengChang Liu, Harald Feldmann (автор архиватора Hamarsoft HAP), Jeff Gilchrist, Henrik Haftmann, Michal Weis, Peter Hubinsky (Slovak Antivirus Center), Cristi Bradiceanu (The DOP), Tomas Hajny, Roeland Louwe Kooijmans, Keith Petersen (General Manager of Simtel), Peter Gutmann, Frank Zago, Adam Nikic, Timo Salmi, Mika Koykka, Henry Juhani Aro, Ron van Daal, Roberto Favaretti, Bulent Eren, Michael E. Webb, Stefan Raaijmakers, uNDeRWoRLD^TPiNC/CNF, Veit Kannegieser (автор DiskEMU), Marcel Blanchet, Synopsis, Suriadi Taslim. Спасибо! КАК РАБОТАЕТ XPACK? ~~~~~~~~~~~~~~~~~~~ Основное назначение утилиты XPACK заключается в сжатии исполнимых файлов. Закодированная программа записывается на диск под исходным именем, и к ней приписывается декодирующий блок. При запуске исполнимого файла управление передается декодирующему блоку, который перемещает себя (и закодированные данные) выше в память. Затем происходит декодирование программы на то же место, куда она должна быть загружена, когда не была упакована. Программа, обработанная XPACK, сбрасывает регистры и флаги в их исходные значения и запускается так, словно никогда и не была закодирована. Если при декодировании EXE-файл не пройдет проверки CRC, на экран будет выведено сообщение "EXE corrupted!" и произойдет возврат в DOS. XPACK имеет защитную функцию, которая препятствует запуску измененной или случайно поврежденной программы. Вы можете быть вполне уверены, что ваша программа защищена от нежелательной модификации. Данные программы не остаются открытыми (для того, кто владеет шестнадцатеричным редактором или дизассемблером) и ваш код находится в безопасности от посторонних глаз. КАК РАБОТАЕТ Xpack OnLine DeCompression System? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Будучи загруженной, Xpack OnLine DeCompression System обеспечивает автоматический доступ по запросу к сжатым файлам данных. Это осуществляется перехватом любых программных вызовов (включая COMMAND.COM) к DOS. Нормально Xpack OnLine DeCompression System передает эти вызовы непосредственно DOS, но когда обнаруживается, что должен быть открыт сжатый файл данных, Xpack OnLine DeCompression System читает этот файл данных и записывает на диск его несжатую копию, которую может использовать программа. Затем имя сжатого файла изменяется на распознаваемое системой XPACK, а полноразмерный файл получает исходное имя. И только тогда вызов передается DOS. Ни DOS, ни программа о происходящем не знают, поэтому операция проходит полностью автоматически. Когда распакованный файл данных закрывается, не подвергнувшись изменениям, Xpack OnLine DeCompression System удаляет распакованную копию и переименовывает обратно исходный сжатый файл. Если же распакованный файл был изменен, Xpack OnLine DeCompression System удаляет сжатый файл и оставляет на диске новый неупакованный файл данных. А особый случай с Xpack OnLine DeCompression System? :) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Xpack OnLine DeCompression System дает программам иллюзию, что маленькие файлы данных являются большими файлами. Эта уловка всегда проходит очень удачно почти со всеми программами. Однако существует особый случай, когда программа получает сведения о размере файла по его записи в каталоге, а затем при открытии файла считывает соответствующее число байт. Цель этого - прочитать целый файл. Такое поведение замечено у команды DOS XCOPY (по крайней мере, в DOS версии 6.22) компании Microsoft и утилиты PKZIP (по крайней мере, версий 1.01 и 2.04g) фирмы PKWARE. Однако и с этими приложениями Xpack OnLine DeCompression System работает хорошо! :) ПОМОЩЬ И ПРЕДЛОЖЕНИЯ ПО УЛУЧШЕНИЮ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Посылайте их автору: Internet e-mail: xpa@pcmail.com.tw Новейшую версию XPACK всегда можно найти на: Slovak Antivirus Center: ftp.elf.stuba.sk /pub/pc/pack Walnut Creek CDROM: ftp.simtel.net /pub/simtelnet/msdos/execomp Garbo archives: garbo.uwasa.fi /pc/execomp Некоторые зеркальные серверы Slovak Antivirus Center: ftp.vse.cz /pub/msdos/SAC/pc/pack (Чехия) ftp-beer.bke.hu /vol1/pub/sac/pc/pack (Венгрия) ftp.cs.tu-berlin.de /pub/msdos/mirrors/stuba/pc/pack (Германия) ОБЯЗАТЕЛЬСТВА ~~~~~~~~~~~~~ Ни я, ни кто-либо другой, помогавший в создании XPACK или любого сопутствующего файла, не несут никакой ответственности за любое повреждение, вызванное использованием этой программы, а также за невозможность использования любого файла или программы из этого дистрибутивного архива XPACK. Все программы, упомянутые в этой документации, являются торговыми марками соответствующих владельцев. Они использованы только в целях идентификации продуктов. РЕГИСТРАЦИЯ ~~~~~~~~~~~ XPACK (1.60+) НЕ ЯВЛЯЕТСЯ бесплатной программой. Пакет распространяется как условно-бесплатный (shareware). Это значит, что вам разрешено попробовать работать с XPACK и ознакомиться с ее возможностями ограниченное время, за которое вы можете определить, подходит ли для вас это ПО. Примерно год эта программа была абсолютно бесплатна, и каждый желающий мог ее свободно копировать, однако я потратил много времени и труда на этот продукт, поэтому за просто так я его отдавать не могу. XPACK в условно-бесплатной версии функционально никак не ограничен. Вам дается 30-дневный период, чтобы оценить, нужен ли вам XPACK. Если вы используете XPACK дольше этого срока, подразумевается, что вы решили и дальше работать с программой, и потому должны ее зарегистрировать. Плата за регистрацию XPACK 1.60+ составляет: US$ 20 - за бонус-пак в виде образа диска по e-mail. US$ 30 - за бонус-пак на дискете по авиапочте. Добавьте US$ 15 за чеки и банковские операции в Европе. Подробности для европейских пользователей находятся в файле XPACK.FRM :) Для других иностранных пользователей следующая информация: Эту программу (v1.6x) можно зарегистрировать через Internet на Albert's Ambry. Зайдите на: http://www.alberts.com Поиск по: >> xpack16s.zip << Для регистрации этого ПО щелкните на пункте "Buy It". Спасибо за регистрацию этой программы. :) Зарегистрированные пользователи получат бонус-пак с утилитами (UU-закодированный, если вы пользуетесь электронной почтой). Вы решили зарегистрироваться? Очень мило с вашей стороны! Спасибо! Чем больше регистраций я получу, тем больше улучшений будет сделано в программе. Конец файла документации на программу XPACK. -----BEGIN PGP SIGNATURE----- Version: 2.6.3i Charset: cp850 iQEVAwUBNX5QE2mFCPuKJJ19AQGLhQgAu/q3otAjNNpOpbbIw4NYVRMj+mnaAuO0 Mxz/+tRTlHwGALh8d59OQHJAOkWGSP7qPD6scUnSC40CFrvLHPluZBjnxXKBz/nh w2dh3+FFt/XIckXFbKRQjMaR7J9K1NAu5Isn6u8/pCxoAQ2tKLNaEGN7eXzokbIk o3wwUPpl1Ks5IV4HXU+SfoCGoz8mPFvyUZCeo+AlRLfdCXkuTcCZtX2dDn+soHJF CuUokC9VHzYYQoaxKjpNFri4aJmjrEWHYhJlD3EZJCFtldN3EI8fMcYDjHXLxF5Y wYHktRuB8sYRBTM15y9qZG8Ul+SL5RB4WEkqS+JH3OQR2Tbov63NEA== =FnDL -----END PGP SIGNATURE-----