Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » FreeArc: бесплатный open-source архиватор - Часть 3

Модерирует : gyra, Maz

Widok (23-11-2010 11:37): Лимит страниц. Продолжаем здесь  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106

   

Widok



Moderator-Следопыт
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

FreeArc
бесплатный open-source архиватор для Windows и Linux,
сочетающий высокую степень сжатия и большой набор возможностей


Официальный сайт | Скриншоты | Лента новостей
Документация на консольную версию | Документация на GUI версию
Сообщество пользователей FreeArc | Вики | Трекер (рассылка по ошибкам)
Проект на SourceForge.net | SVN-репозиторий | Поддержка InnoSetup
Обсуждение на encode.ru (англоязычное)

Скачать последний релиз - FreeArc 0.666 от 20 мая 2010 г. Что нового: ускорение работы в 1.5-2 раза благодаря новой технологии многопоточного сжатия, распаковка архивов многих форматов используя технологии 7-zip, запуск файлов из архива, исправлены все проблемы интеграции с Explorer (подробнее)
 
Текущая альфа версия: 0.67 - загрузка | список исправлений | блог

FAQ по FreeArc

Подробное описание используемых алгоритмов
Почему он сжимает лучше и быстрее, чем 7-zip/rar...
Результаты тестов, подтверждающие его крутизну... | И немного о будущем...
Почему для использования 2+ гб памяти желательно установить 64-битную версию Windows
Планы дальнейшего развития
Что подразумевается под "интеграцией с Explorer"
Старая FreeArc wiki (включая описание формата архива)
Логотип - объявляется конкурс на иконки для FreeArc

Сторонние оболочки для работы с FreeArc:
  • wArc - простая и понятная программа управления архивами (требует .NET Framework 2.0)
  • PeaZip - менеджер архивов с поддержкой большого количества форматов, для Windows и Linux
     

    Родственные темы:
  • Inno Setup плюс внешние упаковщики - использование архивов FreeArc в инсталяторах
  • Пережатиe/Pекомпрессия/Oптимизация файлов для лучшего сжатия - "а как сжать ещё лучше?"
  • FreeArc и Unix - для альтернативно одарённых
     
    Другие архиваторы:
  • WinRAR
  • 7-zip

  • Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 19:15 07-09-2009 | Исправлено: Bulat_Ziganshin, 18:34 26-07-2010
    Bulat_Ziganshin

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    а версию до этих изменений ты выпустить уже не можешь?
     
    Добавлено:
    а с этими ковыряниями - уже 0.5 делай

    Всего записей: 3401 | Зарегистр. 13-08-2007 | Отправлено: 12:42 02-08-2010
    Profrager



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Bulat_Ziganshin
    до 0.5 оно явно не тянет) В прошлый раз когда менял стандартные дельфийские системные библиотеки на свои+KOL, 7z не хотел распаковывать архивы больше 4 гигов. Отыскал мелкую багу в KOL,исправил, написал багрепорт автору, так что теперь по идее должно быть все нормально. Поэтому со всеми ковыряниями выпущу какую-нить версию с номером 0.4.2 или 0.4.2.5) А 0.5 версия будет через месяц или 2, как закончу другой проект, там как раз твой freearc 0.75 подоспеет

    Всего записей: 888 | Зарегистр. 22-05-2010 | Отправлено: 13:15 02-08-2010
    Profrager



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Bulat_Ziganshin
    Вот как-то так получилось:
     
       
       
     
    Остальные ошибки спровоцировать не вышло)
    Кстати, в этой версии unarc.dll уже исправлен баг с распаковкой 4x4?) А то хотел посмотреть, мож на подобном архиве какую-нить ошибку выдаст.. А нифига - все распаковал на ура)

    Всего записей: 888 | Зарегистр. 22-05-2010 | Отправлено: 20:36 02-08-2010
    Bulat_Ziganshin

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Остальные ошибки спровоцировать не вышло)  

    1. упакуй с -m0 и поменяй байт внутри архива - выйдет ошибка crc
    2. запакуй с paq и затем распаковывай без unarc.ini - выйдет неизвестный алгоритм
    3. упакуй с rep:1.5g+rep:1.5g и распаковывай с -ld- - выйдет нехватка памяти
     

    Цитата:
    Кстати, в этой версии unarc.dll уже исправлен баг с распаковкой 4x4?)

    нет. вероятно ты на слишком маленьком файле тестировал, поэтому он у тебя не проявился
     

    Цитата:
    Нашлась одна ошибочка - вместо вывода сообщения об ошибке unarc.dll иногда вылезает виндовская ошибка, типа не может прочитать какой-то адрес

    ты errmsg на NULL проверяешь??
     
    Добавлено:

    Цитата:
    Вот как-то так получилось:  

    я бы выводил сообщение в таком примерно виде:
     
    Произошла ошибка при распаковке архива: недостаточно памяти.
    Unarc.dll reports: {errmsg}
     
    т.е. первая фраза как бы для юзеров, а вторая для более точной технической локализации ошибки
     
    Добавлено:
    ps: понятие "исключение" игроку, который его увидит, соверщенно ни о чём не говорит

    Всего записей: 3401 | Зарегистр. 13-08-2007 | Отправлено: 10:29 03-08-2010
    Profrager



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Bulat_Ziganshin

    Цитата:
    1. упакуй с -m0 и поменяй байт внутри архива - выйдет ошибка crc  
     2. запакуй с paq и затем распаковывай без unarc.ini - выйдет неизвестный алгоритм  
     3. упакуй с rep:1.5g+rep:1.5g и распаковывай с -ld- - выйдет нехватка памяти
    логично)

    Цитата:
    нет. вероятно ты на слишком маленьком файле тестировал, поэтому он у тебя не проявился
    150 метров файл был, кажется

    Цитата:
    ты errmsg на NULL проверяешь??
    то, что выкладывал - старый вариант, еще с 0.666 версией unarc.dll. Че-то накосячил с определением свободного места на системном диске и диске назначения) Но это все уже как-бы не требуется, раз unarc.dll теперь сам подробно возвращает код и сообщение ошибки.

    Цитата:
    Произошла ошибка при распаковке архива: недостаточно памяти.  
     Unarc.dll reports: {errmsg}
    согласен, для простых юзеров такое сообщение более понятное. Наверное так и надо будет сделать.  
    А errmsg при одном и том же errcode всегда будет одинаковым, или все же еще какую-то инфу несет?

    Всего записей: 888 | Зарегистр. 22-05-2010 | Отправлено: 11:42 03-08-2010 | Исправлено: Profrager, 11:53 03-08-2010
    Bulat_Ziganshin

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    А errmsg при одном и том же errcode всегда будет одинаковым, или все же еще какую-то еще инфу несет?

    в том-то и дело что несёт! например включает конкретное название алгоритма, на котором произошёл сбой
     

    Цитата:
    Нашлась одна ошибочка - вместо вывода сообщения об ошибке unarc.dll иногда вылезает виндовская ошибка, типа не может прочитать какой-то адрес  

    я не понял всё же - эта проблема с последним тестовым unarc.dll или со старым? мне хотелось бы разобраться и если нужно исправить

    Всего записей: 3401 | Зарегистр. 13-08-2007 | Отправлено: 11:54 03-08-2010
    Profrager



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Bulat_Ziganshin

    Цитата:
    я не понял всё же - эта проблема с последним тестовым unarc.dll или со старым? мне хотелось бы разобраться и если нужно исправить
    да со старым 0.666. Это в моей дллке траблы. Не парься на этот счет) Я как всегда не до конца протестировав выкладываю релизы)

    Всего записей: 888 | Зарегистр. 22-05-2010 | Отправлено: 12:38 03-08-2010
    Profrager



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Bulat_Ziganshin
    Поправь, если где не так:

    Код:
     
    ErrCodeTable:array[1..ErrCodeTableMax]of PAnsiChar=(
        'Неустранимая ошибка!',                                                // -1
        'Неизвестный метод сжатия архива!',                                    // -2
         nil,                                                                  // -3
        'Выходной блок данных слишком мал!',                                   // -4
        'Нехватает памяти!',                                                   // -5
        'Ошибка чтения данных!',                                               // -6
        'Архив поврежден!',                                                    // -7
         nil,                                                                  // -8
        'Запрошенные данные уже были распакованы!',                            // -9
         nil,                                                                  // -10
        'Ошибка при записи данных на диск!',                                   // -11
        'Не совпадает контрольная сумма!',                                     // -12
        'Неверный пароль!',                                                    // -13
        'Заголовок архива поврежден!',                                         // -14
        'Внутренняя ошибка библиотеки. Сообщите об этом разработчикам!');      // -15
     

     
    некоторые ошибки не включил, потому как они ИМХО никогда возникнуть не смогут)

    Всего записей: 888 | Зарегистр. 22-05-2010 | Отправлено: 17:01 03-08-2010
    Bulat_Ziganshin

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    "Не хватает" пишется раздельно. -8 я бы на всякий случай перевёл. -10 не выводил бы сообщение об ошибке вообще, а писал что-то типа "installation abirted by user". -1 бы не расшифровывал, это на самом деле покрывает все ошибки у которых нет кодов - в этом случае можно писать просто "Произошла ошибка при распаковке архива. Unarc.dll reports: {errmsg}". ну и понятно, если errmsg пусто или NULL, то не выводить вторую фразу вовсе

    Всего записей: 3401 | Зарегистр. 13-08-2007 | Отправлено: 17:29 03-08-2010
    Profrager



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Bulat_Ziganshin

    Цитата:
    "Не хватает" пишется раздельно

    по инерции вместе написалось

    Цитата:
    -8 я бы на всякий случай перевёл

    окей

    Цитата:
    -10 не выводил бы сообщение об ошибке вообще, а писал что-то типа "installation abirted by user"

    он вообще ничего выводить не будет

    Цитата:
    ну и понятно, если errmsg пусто или NULL, то не выводить вторую фразу вовсе

    Будет выводится только номер ошибки.
     
     
    Подробнее...

    Всего записей: 888 | Зарегистр. 22-05-2010 | Отправлено: 18:30 03-08-2010
    Bulat_Ziganshin

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    в последнем случае надо написать "Произошла ошибка при распаковке". и имхо "return errcode" многословно и не совсем грамотно. лучше как я предлагал. а код ошибки сооьбщать только в техз случаях когда nil в таблице и errmsg="" - в остальных случаях и так достаточно информации

    Всего записей: 3401 | Зарегистр. 13-08-2007 | Отправлено: 18:38 03-08-2010
    Profrager



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    в последнем случае надо написать "Произошла ошибка при распаковке"

    добавил

    Цитата:
    и имхо "return errcode" многословно

    зато солидно)

    Цитата:
    и не совсем грамотно

    нда, с английским я не очень дружу) Наверное как-то так надо: "Unarc.dll returns an error code: "

    Всего записей: 888 | Зарегистр. 22-05-2010 | Отправлено: 19:15 03-08-2010
    Bulat_Ziganshin

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    new version:
     
        * new encryption scheme
        * Unarc.dll: returns real error code and passes errmsg via "quit" callback
        * Change skin: operation moved to FreeArc menu
     
    Please test encryption, including
     
        * ability to decrypt archives made by previous FreeArc versions
        * ability to decrypt archives made by this FreeArc version
        * the same with non-latin1 (for example, cyrillic) passwords
     
    I've found 2 bugs in old encryption. They are not critical, so i decided to upgrade in 2 stages. Starting from this version, FreeArc will be able to decrypt both old and new encryption schemes, but will encrypt files using new scheme only starting from 0.75. It will give users time to upgrade to 0.70 before new archives will become wide-spread
     
    This alpha version includes new encryptor that i will disable later until 0.75 release. Please test it thoroughly so i will get chance to fix any problems before 0.70 release

    Всего записей: 3401 | Зарегистр. 13-08-2007 | Отправлено: 21:33 04-08-2010
    Bulat_Ziganshin

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Unarc.dll returns

    return - возвращать, returns - возвращает, returned - возвратил

    Всего записей: 3401 | Зарегистр. 13-08-2007 | Отправлено: 08:56 05-08-2010
    Bulat_Ziganshin

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    updated http://freearc.org/Statistics.aspx
     
    i will look into linux version next week

    Всего записей: 3401 | Зарегистр. 13-08-2007 | Отправлено: 12:25 05-08-2010
    HEXFIX



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Доброго времени суток. Подскажите. пожалуйста. как можно прикрутить архиватор в Totak Commander?
    В папке total commander multiarc plugin лежит некий freearc. addon.

    Разобрался

    Всего записей: 306 | Зарегистр. 29-03-2010 | Отправлено: 15:34 07-08-2010 | Исправлено: HEXFIX, 19:18 07-08-2010
    egor23



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Bulat_Ziganshin
    Настройки программы - Интеграция с Explorer - Ассоциировать Hamster Free Archiver c...
    это новое название?

    Всего записей: 3832 | Зарегистр. 03-11-2003 | Отправлено: 10:25 08-08-2010
    Bulat_Ziganshin

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    egor23
    скачай заново

    Всего записей: 3401 | Зарегистр. 13-08-2007 | Отправлено: 10:34 08-08-2010
    SergiusPl

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажете пожалуйста, как произвести распаковку арк архива в дельфи. unarc.dll есть как ей воспользоваться.

    Всего записей: 28 | Зарегистр. 29-03-2009 | Отправлено: 08:35 09-08-2010
    Shegorat



    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    SergiusPl

    Цитата:
    Подскажете пожалуйста, как произвести распаковку арк архива в дельфи. unarc.dll есть как ей воспользоваться.

    Ну в библиотеке только одна функция

    Код:
    function FreeArcExtract (callback: longword; cmd1,cmd2,cmd3,cmd4,cmd5,cmd6,cmd7,cmd8,cmd9,cmd10: PAnsiChar): integer;

    Названия архива, путь куда распаковывать должны быть в кодировке utf8. Функция возвращает код ошибки. Несколько страниц назад была таблица возвращаемых значений. Можете зайти сюда и скачать скрипт рпспаковки для Inno Setup. там показаны возможности библиотеки.
     
    Bulat_Ziganshin
    Кстати насчет unarc.dll. Она не всегда распаковывает архивы с паролем. Вот допустим для архива с этим шифрованием "-pMyPass --encryption=aes:r100" Пароль вообще не требуется, unarc.dll его просто распаковывет, а для этого "Максимальное: aes:r100+serpent/cfb:r100+twofish:r100 -pMyPass -hp" выходит ошибка -14, поврежден заголовок, хотя сам FreeArc его распаковывет нормально. Версия 0.67 Это только у меня так или просто шифрование еще недоработано?

    ----------
    Krinkels.org - создание инсталляционных пакетов.
    Как много дел считались невозможными, пока они не были осуществлены.

    Всего записей: 695 | Зарегистр. 09-06-2009 | Отправлено: 09:57 09-08-2010 | Исправлено: Shegorat, 09:58 09-08-2010
       

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106

    Компьютерный форум Ru.Board » Компьютеры » Программы » FreeArc: бесплатный open-source архиватор - Часть 3
    Widok (23-11-2010 11:37): Лимит страниц. Продолжаем здесь


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru