ARJ для OS/2, версия 2.73. Информация о программе. 19 августа 2000 г. ARJ/2 является дополнением к архиватору ARJ v 2.7x для DOS. Наличие ARJ для DOS необязательно, но рекомендуется, поскольку файлы документации не входят в комплект ARJ/2. *********************************************************************** *** *** *** ВНИМАНИЕ: ARJ/2 РАЗРАБАТЫВАЕТСЯ НЕЗАВИСИМО ОТ ОСНОВНОЙ ЛИНИИ *** *** ПРОДУКЦИИ ARJ SOFTWARE, INC., ПОЭТОМУ МОЖЕТ ОТЛИЧАТЬСЯ В *** *** ПЛАНЕ ФУНКЦИОНАЛЬНЫХ ВОЗМОЖНОСТЕЙ. ARJ SOFTWARE, INC. НЕ *** *** ПРИНИМАЕТ ЗАЯВОК НА РЕГИСТРАЦИЮ ARJ/2. *** *** *** *********************************************************************** ОТКАЗ ОТ ГАРАНТИЙ ARJ Software Russia отказывается от любых гарантий в отношении данного продукта. Ни при каких условиях разработчики не несут ответственности за любой ущерб, вызванный этим продуктом. Вы имеете полное право распространять пакет ARJ/2 в любой форме. Коммерческое использование продукта должно быть одобрено компанией ARJ Software, Inc. Информация в этом документе может быть изменена без предварительного уведомления. ВВЕДЕНИЕ ARJ/2 призван стать первым многофункциональным архиватором под OS/2, где ощущается недостаток программ, выполняющих эту работу. Цель портирования состoяла в том, чтобы сохранить функциональные возможности и совместимость с ARJ для DOS (далее "ARJ/DOS"), но имеют место несколько исключений (см. ниже). ТРЕБОВАНИЯ К СИСТЕМЕ * OS/2 v 1.2 или выше, или Windows NT v 3.10 или выше. Для систем на базе OS/2: * Процессор 80286 или выше. * 512 КБ свободной памяти. Для систем на базе Windows NT: * 1024 КБ свободной памяти. ОТЛИЧИЯ ОТ ARJ ДЛЯ DOS И ARJ32 (обозначения: "-" - отсутствующие средства, "*" - функциональные различия, "+" - возможности, имеющиеся только в ARJ/2) - Может наблюдаться существенное падение производительности (по сравнению с ARJ для DOS и версиями ARJ/2 до 2.62.08) при работе с с архивами на устройствах без кеша с отложенной записью. * В этой версии исправлена ошибка в логике проверки целостности архивов. Если в заголовке указан отрицательный размер сжатого файла, то ARJ может при определенных условиях войти в бесконечный цикл. Для исключения этой ситуации обработка таких архивов более не производится, при обнаружении заголовка с отрицательным размером сжатого файла будет выдано предупреждающее сообщение об умышленно модифицированном заголовке, и выполнение программы прекратится. * Внешние модули шифрования представляют собой динамические библиотеки OS/2. Начиная с версии 2.72, с ARJ/2 поставляется ARJCRYPT версии 2.1. Для распаковки зашифрованных им архивов под DOS также требуется ARJCRYPT 2.1 для DOS. Алгоритм шифрования в DOS и OS/2 не отличается, поэтому архивы, созданные под OS/2, могут быть впоследствии расшифрованы под DOS. * В поле "Host OS" ARJ/2 проставляет "OS/2". При распаковке такого архива посредством ARJ для DOS, могут иметь место некоторые побочные эффекты. Версии ARJ до 2.50 преобразуют в именах файлов все символы ASCII с кодами больше 128 к нижней половине ASCII, обнуляя старший бит. Так, файл "▒TEST▒" будет распакован в файл "1TEST1". ARJ/DOS также обнуляет старший бит в комментариях, но только если архив был создан ARJ/2. Архивы, созданные ARJ/DOS и впоследствии обработанные под OS/2, в этом случае обрабатываются нормально. Начиная с версии 2.72, ARJ/DOS отказывается обрабатывать архивы ARJSFXJR для OS/2 из-за возможных различий в формате. Для обхода этого ограничения рекомендуется упаковывать архивы под OS/2 с ключом "-2d". * ARJ/2 использует стандартный обработчик ошибок в OS/2, который запрашивает действия у пользователя. Ключ -& устанавливает собственный обработчик ошибок и исключений (ключ введен в версии 2.62.08). Имейте в виду, что знак "&" используется в OS/2, чтобы последовательно запустить два процесса, и в командной строке вместо "-&" следует писать "-^&". * ARJSFX и ARJSFXJR будут показывать ANSI-последовательности, если поддержка ANSI включена в текущем сеансе OS/2 (по умолчанию она включена). * ARJ/2 хранит расширенные атрибуты вместе с файлами. Чтобы отменить поддержку расширенных атрибутов и, таким образом, вернуться к традиционному формату заголовка, используйте ключ "-2e". Детальная информация о поддержке EA дана ниже. * Способ хранения списка файлов в ARJ/2 такой же, что и в ARJ/DOS, и для экономии памяти списки, насчитывающие более 3000 файлов, выносятся на диск. Чтобы хранить весь список в памяти, используйте ключ -hm65000. + Ключ "-ha" можно также использовать при архивации файлов. В этом случае для архивируемых файлов с атрибутом "только для чтения" этот атрибут не будет проставляться в архиве, что полезно, например, при архивации содержимого компакт-диска. + По ключу "-2d" в поле "Host OS" ставится "MS-DOS". Это можно использовать для сохранения совместимости и чтобы избежать предупреждения "двоичный файл из другой OС". Если указан ключ "-2d1", то "MS-DOS" проставляется только в основной заголовок архива, таким образом, комментарий будет выводиться без искажений при просмотре архива в DOS. + Ключ "-2k" устанавливает двухзначный формат года при выводе дат в списках. Трехзначный формат, используемый для дат после 2100 года, не будет использоваться, таким образом, список будет проще просматривать. "-2k1" устанавливает более удобочитаемый и информативный формат, в этом случае для дат с 1970 по 2069 гг. используется двухзначное представление, а для 2070 г. и последующих лет - трехзначное. + "-2p" позволяет контролировать приоритет ARJ/2. Для его использования необходимо знать основы многозадачности в OS/2. Более высокий приоритет может заметно повысить производительность ARJ/2, но при этом замедлить другие процессы. Значение может равняться 1, 2, 3 или 4: 1 = Минимальный приоритет 2 = Стандартный приоритет 3 = Режим работы задач, критичных к времени выполнения 4 = Фиксированно-высокий приоритет Модификаторы (priority delta) не поддерживаются, т.к. мы не видим в них необходимости. + С ключом "-h#" можно указывать собственный формат даты. Допустимы следующие спецификаторы: Y = год, M = месяц, D = день h = час, m = минута, s = секунда N = порядковый номер дня с 1 января текущего года (обратите внимание: учитывается регистр символов) Остальные символы считаются разделителями и не заменяются цифрами из даты. Также не изменяются символы, которые стоят на позициях, не предусмотренных форматом даты (4 знака для года, 2 знака для остальных чисел). Примеры: ARJ a project- -h#YYYYMMDD (project-19991022.arj) ARJ a backup- -h#MM-DD_hh-mm-ss (backup-10-22_23-57-16.arj) ARJ a specs -h#YY (specs99.arj) ARJ a test -h#YYYYYYYY (testYYYY1999.arj) ARJ a logs_ -h#NNN (logs_295.arj) + По просьбам системных операторов сети FidoNet, в ARJ/2 добавлен ключ "-2a", по своему действию похожий на "-jo", за исключением того, что вместо нумерации расширений изменяется имя файла. Рассмотрим это на примере файла "FILE995N.TXT". При извлечении из архива файла с таким же именем, новый файл будет назван "FILE9950.TXT", при последующем извлечении - "FILE9951.TXT", и так далее до "FILE9959.TXT", после чего следующий файл будет называться "FILE9960.TXT". После "FILE9999.TXT" ARJ/2 перейдет к "FIL00000.TXT". Это позволяет иметь до 100000000 файлов, имена которых изначально совпадали. Данный ключ необходим для системных операторов FidoNet, где могут иметь место случаи с одноименными пакетами с почтой (ARCmail), прибывающими от разных систем. ПРИМЕЧАНИЯ: 1. Имеет смысл прописывать этот ключ в скрипт распаковки почты, а не в переменную окружения ARJ_SW. 2. В случае с файлом, названным 9999.XXX, все последующие операции будут производиться над файлом 0000.XXX, т.е. файлы с "9" в начале имеют меньше возможностей для дублирования. К счастью, такая ситуация маловероятна для FidoNet. 3. Существует аналогичный ключ, "-jo1", нумерующий имена файлов при распаковке, однако его действие отличается тем, что файловая система должна поддерживать длинные имена и, более того, он не подходит для ARCmail. + ARJSFXJR не поддерживает длинные имена под Windows 95. ARJSFXJR в ARJ/2 поддерживает длинные имена. + Если отсутствует переменная окружения ARJ_SW, ARJ/2 ищет файл ARJ.CFG в каталоге с программой. Данный файл имеет тот же формат, что и конфигурационные файлы, описанные в документации. Если файл ARJ.CFG не найден, используются установки по умолчанию. ПОДДЕРЖКА РАСШИРЕННЫХ АТРИБУТОВ Начиная с версии 2.62.10, ARJ/2 может сохранять и восстанавливать расширенные атрибуты (EA) без помощи внешних утилит. EA сжимаются и хранятся как часть заголовка. Ограничения на поддержку EA: * Возможность продолжения прерванной многотомной архивации (-jn) не будет работать при включенных EA. Вам необходимо либо отказаться от поддержки EA посредством -2e, либо создать архив с нуля, если EA имеют ценность. * В режиме "-j#" EA не поддерживаются. Были добавлены следующие ключи для управления архивацией EA: * "-2c" ограничивает список обрабатываемых EA только критическими. Заархивированные некритические EA не будет восстановлены, а при создании архивов будут сохранены только критические EA. * "-2e" задает маску включения. Если не указывать маску атрибутов, то поддержка EA вообще выключается. Выражение, которое следует за "-2e" интерпретируется по аналогии с маской имен файлов, при этом будут сохранены/распакованы только EA, попадающие под маску. Ключ можно использовать многократно для выбора по нескольким маскам. Нельзя использовать внешние списки файлов. Примеры: ARJ a test В этом примере, все EA будут сохранены. ARJ a no_eas -2e ARJ x no_eas -2e EA не будут ни сохраняться, ни распаковываться. ARJ a documents -2e.LONGNAME В этом случае, сохраняются только атрибуты, задающие имена объектов (.LONGNAME). ARJ a test -2e.CLASSINFO -2e.ICON* .CLASSINFO и .ICON* (.ICON, .ICON1, .ICONPOS) будут сохранены. При архивации рабочего стола OS/2 имеет смысл использовать маску "-2e.*". В таком случае сохраняются только системные атрибуты, их имена начинаются на ".", в то время, как атрибуты, создаваемые прикладными программами, именуются по названиям программ. * "-2l" включает режим преобразования расширенных атрибутов .LONGNAME (используемых в основном для хранения заголовков объектов WPS) к именам файлов, что упрощает перенос документов с системы, где OS/2 установлена на FAT. Если заголовок объекта (и, следовательно, расширенный атрибут) содержит символы перевода строки или другие недопустимые для имен файлов символы, в архиве будет сохранено обычное имя файла, и расширенный атрибут .LONGNAME будет также записан в архив. Данный ключ игнорируется во время распаковки. Ключи "-2e" и "-2x" не влияют на данный ключ (но расширенные атрибуты .LONGNAME не будут сохраняться, если явным или неявным образом отключена их архивация). * "-2x" задает маску исключения. Далее должно следовать выражение, определяющие исключение EA. Правила те же самые, что и с "-2e". Можно указывать одновременно и маску включения, и маску исключения, например: ARJ a backup_ -r -p1 -h#2 -2e.* -2x.FED* c:\projects Пример показывает способ регулярной архивации рабочего каталога с сохранением всех системных расширенных атрибутов, но исключая те из них, которые созданы редактором FED (Fast Editor Lite, автор - Сергей Евтушенко, evsi@naverex.kiev.ua ) - эта программа не следует традиционным рекомендациям и обозначает с помощью системных расширенных атрибутов позиции в текстовых файлах. Расширенные атрибуты также поддерживаются в ARJSFXV, их хранение в самораспаковывающихся архивах реализовано по той же технологии, что и в обычных архивах ARJ. Присутствие EA при архивации обозначается сообщением "(EAs: ...)" после статистики по размеру файла. Обратите внимание, что этот размер может отличаться от того, который будет сообщен при распаковке - это связано с тем, что в первом случае показывается размер внутренней структуры, используемой для хранения EA, а во втором случае - пространство, необходимое операционной системе. Количество расширенных атрибутов и занимаемый ими размер отображается в статистике по команде "ARJ v". ИЗВЕСТНЫЕ ПРОБЛЕМЫ * На разделх FAT под Windows NT можно использовать как короткие, так и длинные имена файлов. Если при архивации указать короткое имя (например, "ARJ a lntest LONGFI~1.TXT ), то этот файл будет представлен в архиве своим коротким именем, даже если есть эквивалентное длинное имя. Если в архиве уже существует файл с таким же длинным именем - он не будет замещен. * Для корректной работы REARJ/2 необходимо, чтобы командный процессор, указанный переменной окружения COMSPEC, был совместим с CMD.EXE. Также не следует переименовывать REARJ.EXE, поскольку он вызывает сам себя при обработке вложенных архивов (/a). ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ Q: Приложения третьих фирм не распознают архивы ARJ/2! A: Попробуйте отключить обработку расширенных атрибутов (-2e), а на HPFS - еще и хранение DTA/DTC (-j$). Большая часть проблем связана с новым форматом заголовка в последних версиях ARJ, который, несмотря на 100% совместимость и открытое описание, не поддерживается программным обеспечением. Известные примеры таких приложений включают File Commander v 2.11, Norton Commander v 5.00 и WinRAR v 2.60. Q: ARJ/2 и InfoZIP сообщают различные размеры расширенных атрибутов. В чем причина? A: Как было сказано ранее, ARJ/2 сообщает размер собственной области данных, в которой хранятся EA. Этот размер, как правило, не совпадает с тем, который выделяет ОС, или с тем, который сообщают другие архиваторы под OS/2. Q: Как сохранить папки рабочего стола с их пиктограммами? A: Папки представлены директориями, следовательно, нужно включить архивацию директорий по -a1 или -hbfd. Q: Почему ARJ/2 - 16-битовая программа? A: Этому есть несколько причин. Во-первых, процедуры сжатия были оптимизированы путем частичного переписывания на ассемблере, и именно поэтому ARJ 2.x сжимает во много раз быстрее ARJ 1.x, а ARJ32 - достаточно медлителен по сравнению с ARJ/2. Во-вторых, поддержка 16-разрядных приложений в современных версиях OS/2 реализована достаточно прозрачно и не задействует никаких средств наподобие виртуальных машин DOS. Конечно, имеет место трансляция адресов, но обычно большую часть времени ARJ/2 выполняет именно кодирование информации. Ранее планировалось перенести ARJ32 под OS/2, но впоследствии было решено оставить код 16-разрядным, добавляя новые функции из ARJ32. Q: Что такое ARJLX? A: ARJLX представляет собой ARJ/2, сжатый утилитой LXLITE. Для работы требуется OS/2 v 3.0 или выше. Вы можете столкнуться с рядом побочных эффектов, в частности, эту программу нельзя зарегистрировать утилитой REGISTER.EXE из комплекта ARJ/2. Q: EA пропали после того, как я добавил файлы в архив под DOS. A: Текущие версии ARJ/DOS и ARJ32, а также ARJ/2 до 2.62.10, выбрасывают расширенные атрибуты из заголовков при изменении архива. Q: Я хочу создать однотомный самораспаковывающийся архив, который поддерживает EA, но ARJ/2 использует ARJSFX вместо ARJSFXV. A: Вы должны указать ARJ/2 подключить ARJSFXV/2. Самый лучший путь для этого состoит в том, чтобы задать заведомо большой объем тома (например, -va). Q: Как создать простейший инсталлятор средствами ARJ/2? A: ARJSFX/2 может выполнять команды OS/2 после распаковки архива. Пример: создайте пакетный файл, который должен запуститься по завершению инсталляции. Например, INSTALL2.CMD: ======= /* REXX */ if RxFuncQuery('SysLoadFuncs') then do call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs' call SysLoadFuncs end say "Инсталляция завершена, создаются объекты WPS..." call SysCreateObject .... ======== и т.п. Теперь создайте комментарий к архиву, где первой строкой будет: )) \InstallDir\ -b -x -y -! INSTALL2.CMD Назовите его, например, CMT.ANS. Теперь создайте архив ARJSFX: ARJ PACKAGE.EXE -je -r -a -jm -zCMT.ANS -xCMT.ANS В результате будет создан самораспаковывающийся архив с запуском програмы-инсталлятора. Распространение таких архивов на коммерческой основе запрещается. Q: Как отличить архивы ARJ/2 от архивов ARJ или ARJZ? A: Просмотреть архив командой ARJ V. В поле "Host OS" будет указан тип ОС, а информация из поля "Revision" может использоваться для идентификации версии архиватора: 1 = ARJ до версии 0.14, ARJZ в режиме совместимости (-md меньше 26624) 2 = ARJ v 0.14...0.20 3 = ARJ v 1.00...2.22 4 = ARJ v 2.30, X1 5 = ARJ v 2.39a, 2.39b 6 = ARJ v 2.39c...2.41 7 = ARJ v 2.42a...2.50a 8 = ARJ v 2.55...2.61, ARJ/2 v 2.61 9 = ARJ v 2.62, ARJ/2 v 2.62, ARJ32 v 3.00 10 = ARJ v 2.70 и выше, ARJ/2 v 2.62.10 и выше 50 = ARJZ с максимальным расстоянием 32 КБ 51 = ARJZ с максимальным расстоянием 64 КБ 100 = ARJ32 v 3.00b...3.01 101 = ARJ32 v 3.02 и выше Внимание: версии ARJ с форматом заголовка 1 применяли другой метод сжатия по -m4. Поддержка этого метода была выброшена из ARJ в версиях 1.xx. Такие архивы могут быть неправильно обработаны ARJ/2. ИНФОРМАЦИЯ ДЛЯ РАЗРАБОТЧИКОВ Формат заголовка в ARJ/2 полностью совместим с форматом в ARJ, но ARJ/2 задействует расширенные заголовки. Краткое описание технологии хранения EA начнем с формата расширенного заголовка (все величины - little-endian): Разм. Описание ----- -------- 1 Идентификатор заголовка. Расширенные атрибуты обозначаются идентификатором "E" (0x45). Имеет силу только если arj_nbr (номер версии заголовка) больше или равен 10. 1 Флаг продолжения. Если установлен в 0, означает конец цепи блоков, так что данные EA могут быть совмещены и распакованы. Также он обеспечивает проверку целостности EA. ? Блок упакованных EA. Стандартный CRC32 всего заголовка, включая идентификатор, но исключая поле длины заголовка, дописывается в конец. Настоятельно рекомендуется, чтобы CRC проверялся при любых операциях с EA, требующих их распаковки. Блок упакованных EA - сложная структура, которая может быть разбита на несколько томов, находясь в разных заголовках одного файла. В таком случае, все отдельные части должны быть соединены после того, как прочитан последний блок (это проверяется по отсутствию флага EXTFILE_FLAG. Формат блока: Разм. Описание ----- -------- 1 метод сжатия (0...4, может отличаться от примененного к файлу) 2 Размер распакованных данных в байтах 4 CRC32 распакованных данных ? Упакованные данные EA могут быть распакованы обычными алгоритмами ARJ. Если файл зашифрован, упакованные данные также зашифрованы (но шифрование реинициализируется перед обработкой EA). Модификатор пароля в случае с многотомными файлами берется из того тома, где лежит первая часть файла. После распаковки, данные представляют собой следующую структуру: Разм. Описание ----- -------- 2 Общее количество атрибутов 1 флаг fEA (указывает на критические EA) 1 Размер названия атрибута 2 Размер значения атрибута ? Название атрибута (не заканчивается нулем) ? Значение атрибута Если файл текстовый, его расширенные атрибуты должны обрабатываться как двоичные данные. При разбиении на несколько томов, разбивается уже готовая структура, т.е. не происходит ни реинициализации сжатия, ни повтора заголовка. ИНФОРМАЦИЯ О ПРОДУКТЕ ARJ/2 был разработан компанией ARJ Software Russia на базе исходного кода ARJ. Продукт тестировался на IBM OS/2 v 1.3, 2.0, 2.1, 3.0, 4.0 и 4.5, Microsoft Windows NT Workstation v 3.51 и 4.00. Файловые системы, выбранные для тестирования: FAT, HPFS, Ext2FS и NTFS. Разработчики: Андрей Белов -- программист Вячеслав Одинцов -- организатор бета-тестирования. Исходный код не распространяется. СПИСОК ИЗМЕНЕНИЙ (Только общедоступные версии включены в список) 2.61.10 21/11/1998 Первая версия. 2.61.11 26/11/1998 ARJ/2 2.61.10 вызывал исключение 0Dh, если ARJ$DISP удаляется через Task List. Исправлена очистка экрана в ANSI. 2.61.13 13/12/1998 Исправлена ошибка в "ARJ M", уменьшен размер исполнимых модулей. ARJ/2 теперь также работает под Windows NT. 2.61.14 31/12/1998 Незначительные исправления. Эта версия - последняя из 2.61. 2.62.02 09/01/1999 Общедоступная версия. Исправлен текст некоторых сообщений. ARJSFX корректно поддерживает ключ "-!". 2.62.03 12/01/1999 ARJ/2 v 2.62 вызывал исключение в Windows NT при создании директорий. ARJSFX/ARJSFXV могли зацикливаться на архивах с длинными именами. ARJ/2 имел проблемы с именами файлов длиннее 131 знака. 2.62.04 24/02/1999 Исправлен показ ANSI-комментариев. Несколько добавлений к документации. 2.62.05 01/05/1999 Введен ARJSFXV v 2.62c. 2.62.07 23/08/1999 ARJ i сообщал о повреждениях в прежних версиях ARJ/2. Изменена процедура поиска в файлах для новых файловых систем. Архив поставки защищен "электронной подписью". 2.62.09 04/09/1999 Исправлен алгоритм создания заголовка. Исправлена ошибка в процедуре определения свободного объема (для томов FAT больше 1 ГБ). Включена поддержка переменных окружения (-+). В именах файлов теперь допускаются пробелы. По умолчанию ставится расширение ".arj" (в нижнем регистре). Восстановлен ключ -&. Метки томов теперь могут быть сохранены/восстановлены. Группа ключей "-h2" переименована в "-2" (старые наименования еще поддерживаются). Проверка на Windows NT и выставление NT в Host OS больше не производится в связи с выходом ARJ32. Добавлен полный набор сопутствующих утилит. 2.62.10 15/09/1999 Восстанавливается время создания директорий. Введена поддержка расширенных атрибутов в ARJ и ARJSFXV. Исправлена ошибка с обработкой путей в ARJSFXV. 2.62.12 26/09/1999 Добавлена проверка на шифрование при создании самораспаковывающихся архивов. Исправлено создание страховочных копий в режиме поддержки EA. Добавлена возможность комментировать любые страховочные копии. Введена проверка на файлы больше 2 ГБ. Исправлено создание многотомных "пустых" архивов ("-j#"). Исправлена обработка зашифрованных архивов и архивов с "двойными" именами файлов по командам "j" и "y". Исправлена реакция на посторонние файлы в многотомном режиме. Автоматически генерируются номера томов выше 99. Включен режим создания встроенной страховочной записи. 2.70.01 08/10/1999 Изменен формат сообщений об ошибках. Восстановлена совместимость с X-терминалом (xterm) системы XFree86 for OS/2. При использовании -hk проверяется размер тома, чтобы избежать зацикливания. Исправлена ошибка, приводившая к созданию пустых архивов при отсутствии файлов. 2.70.02 25/10/1999 Исправлен ARJSFXJR (не проставлялась дата при распаковке). Устранены проблемы с рекурсивной перепаковкой (/a* /u) в REARJ. Добавлена возможность выбора формата даты в -h#. Добавлен режим совместимости -2d1. 2.70.04 06/11/1999 К форматам даты добавлен номер дня в году (-h#NNN). Исправлена простановка атрибутов на распакованные файлы. Добавлено автоматическое тестирование архивов после расшифровки. Исправлен парсинг команд для работы с запасными копиями. Добавлен автоматический поиск конфигурационного файла. Исправлен ввод пароля с клавиатуры. Восстановлена совместимость с EXT2FS.IFS. 2.70.05 31/12/1999 Исправлены сообщения "Невозможно найти файл ...", возникающие при работе со списком файлов. Самораспаковывающиеся архивы сжаты стандартным методом EXEPACK. Введена новая схема регистрации. Добавлен автоматический поиск файла ARJ.KEY. Исправлен вывод ESC-последовательности, удаляющей символы до конца строки. Исправлены сообщения о нехватки памяти, возникающие после обработки большого числа томов. Исключены побочные эффекты при распаковке поврежденных архивов. Исправлена простановка даты и времени на распакованные файлы. Исправлена рекурсивная распаковка в REARJ с ключом /G. REARJ/2 обновлен до версии 2.42. 2.70.07 06/01/2000 Незначительная оптимизация алгоритма сжатия. Добавлен режим преобразования расширенных атрибутов .LONGNAME к именам файлов во время архивации. Ключ "/J" обрабатывался неверно в зарегистрированных версиях REARJ/2. 2.07.08 07/01/2000 Исправлена ошибка в проверке корректности регистрационных ключей. 2.71.01 19/03/2000 При архивации с ключом "-ha" снимаются атрибуты "только для чтения". Исправлен формат вывода дат после 2000 года. Введен ключ "-2k", форсирующий использование двухзначного формата для года в списках файлов. Исправлена обработка модификаторов размера "-v...K" и "-v...M". Исправлен вывод регистрационной информации в ARJSFXJR. В REGISTER.EXE ключ "-all" заменен на отдельные ключи "-arj" и "-arj32". Действие ключа "-s" в ARJSFXV изменено на противоположное и отныне разрешает разделенный доступ к файлам. Добавлен альтернативный алгоритм нумерации томов в многотомных архивах. 2.71.02 25/03/2000 Исправлена ошибка с недостатком файловых дескрипторов (проявлялась в версиях 2.70.09 и 2.71.01). 2.71.03 29/03/2000 Исправлена некорректная реакция на ключи -b и -b2. 2.71.05 27/06/2000 Незначительные изменения и исправления. 2.72.06 18/08/2000 Коммерческие бета-версии более не имеют ограничений на срок действия. Исправлена незначительная ошибка при выводе на экран с использованием ключа "-t1". Исправлена обработка ключа "-*". Устранены ошибки, связанные с некорректной архивацией по ключу "-m4". Введена проверка ключей при изменении самораспаковывающихся архивов. Формат вывода номера версии изменен для совместимости с Winzip. Исправлена обработка многотомных архивов при задании рабочей директории. Исправлена ошибка с созданием в некоторых случаях пустого тома в конце многотомных архивов. Модуль ARJSFX корректно определяет и выводит на экран подпись ARJ-SECURITY. Исправлена обработка ключа "-jc" при распаковке файлов, разбитых на несколько томов. Устранена проблема с заданием ключа "-js" в переменных окружения и в командной строке. Команда "l" выводит " 00" для 2000 г. и "100" для 2001 г.. Введен ключ "-2k1" для взаимно однозначного представления даты. Введены ключи "-hy1" и "-hy2", форсирующие использование параметров кодовых страниц OEM и ANSI. Исправлено шифрование существующих незашифрованных архивов по ключу "-hg". При выводе помощи отключается индикатор. ARJCRYPT обновлен до версии 2.1. 2.73.01 19/08/2000 Исправлено зацикливание на заголовках с отрицательным размером сжатого файла. Незначительные изменения текста сообщений. В файлах конфигурации можно использовать модификатор "-", действующий как "+", кроме тех случаев, когда он предшествует ключу. Исправлен подсчет размера тома при обновлении архивов со страховочной записью (ARJ-PROTECT). Исправлен подсчет общего числа файлов при выводе списков. Устранена проблема с использованием ключа "-wv" при обновлении томов. Исправлен вывод процента выполненной работы по ключам "-i3" и "-i6" для многотомных архивов. Исправлена обработка ключа "-jc" для подсчета распакованных файлов в многотомных архивах, вывод запросов отключается для незадействованных томов. Исправлено зацикливание при использовании ключа "-va" на крупных разделах. Конец файла