Модераторы: Snowy, MetalFan, bems, Poseidon

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Работа с алгоритмом архивации LZMA, Прикрутить файл к функциям? 
:(
    Опции темы
Georg97
Дата 18.5.2013, 02:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 38
Регистрация: 30.3.2010

Репутация: нет
Всего: нет



Отыскал в просторах интернета архив с реализацией LZMA алгоритма.
Никак не получается прикрутить упаковку/распаковку файла к функциям этой библиотеки?
Поделитесь пожалуйста своими соображениями или есть какая другая библиотека с работой одним файлом: сжатие-распаковка (модули лучше с ассемблерными вставками; можно в MemoryStream). Только работающая с большими файлами тоже! В интернете смотрел: только  7za.dll (SevenZipVCL) оказался рабочим, да и то с небольшими файлами и только упаковывает! Остальное - либо под консоль, либо вообще не работает!!! smile 

Это сообщение отредактировал(а) Georg97 - 18.5.2013, 08:30

Присоединённый файл ( Кол-во скачиваний: 13 )
Присоединённый файл  LZMA_1.2.rar 20,86 Kb
PM MAIL   Вверх
northener
Дата 18.5.2013, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Попробуйте fwzip


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Georg97
Дата 18.5.2013, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 38
Регистрация: 30.3.2010

Репутация: нет
Всего: нет



Цитата(northener @ 18.5.2013,  14:42)
Попробуйте fwzip

Нет нужен не ZIP, а LZMA! smile 
Ну или 7-Zip, но для работы с одним файлом или простенький модуль, желательно с ассемблерными вставками, работающий с большим объемом файла...

Это сообщение отредактировал(а) Georg97 - 18.5.2013, 14:51
PM MAIL   Вверх
northener
Дата 19.5.2013, 03:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(Georg97 @  18.5.2013,  14:48 Найти цитируемый пост)
Нет нужен не ZIP, а LZMA

А почему это требование так важно, если от модуля требуется не только распапковка, но и запаковка?
И зачем желательны "ассемблерные вставки"?
Какое-то странное желание :(
P.S.
Семестр заканчивается. Скоро нужно сдавать курсовую. А "воз и ныне там"? smile

Это сообщение отредактировал(а) northener - 19.5.2013, 03:30


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
StranikS
Дата 19.5.2013, 13:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 39
Регистрация: 1.2.2006

Репутация: нет
Всего: 2



Вот пожалуйста, модуль для работы с библиотекой 7z.dll. В архиве:
- сам модуль SevenZIP.pas, его надо прикрутить к программе в разделе uses;
- последняя версия 7z.dll - взят мной из 7-zip 9.20, его нужно закинуть в папку с вашей программой
- readme-файл с описанием.



Это сообщение отредактировал(а) StranikS - 19.5.2013, 13:23

Присоединённый файл ( Кол-во скачиваний: 9 )
Присоединённый файл  lzma_unit.7z 324,97 Kb
PM MAIL   Вверх
StranikS
Дата 19.5.2013, 13:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 39
Регистрация: 1.2.2006

Репутация: нет
Всего: 2



И еще раз тот-же архив smile)))
ЗЫ: Не понравился мне новый движок сайта...

Это сообщение отредактировал(а) StranikS - 19.5.2013, 13:33

Присоединённый файл ( Кол-во скачиваний: 11 )
Присоединённый файл  lzma_unit.7z 324,97 Kb
PM MAIL   Вверх
Georg97
Дата 19.5.2013, 16:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 38
Регистрация: 30.3.2010

Репутация: нет
Всего: нет



Цитата(StranikS @ 19.5.2013,  13:13)
Вот пожалуйста, модуль для работы с библиотекой 7z.dll. В архиве:
- сам модуль SevenZIP.pas, его надо прикрутить к программе в разделе uses;
- последняя версия 7z.dll - взят мной из 7-zip 9.20, его нужно закинуть в папку с вашей программой
- readme-файл с описанием.

Спасибо конечно, но можно как-то без dll или свою хотя-бы написать (есть исходники у кого)? Я кстате немного разобрался с SevenZipVCL, только при  архивации/извлечении файл сохраняется в текущую директорию с программой... - Просто мозгов не хватает переделать модуль, предназначенный для консольного приложения!
Цитата(northener @ 8.5.2013,  14:48)
А почему это требование так важно, если от модуля требуется не только распапковка, но и запаковка?
И зачем желательны "ассемблерные вставки"?
Какое-то странное желание :(
P.S.
Семестр заканчивается. Скоро нужно сдавать курсовую. А "воз и ныне там"?

1. Говорю сразу - пишу для себя!
2. Я так понимаю что 7za.dll,  что 7z.dll написаны на ассемблере?

Почему  говорю, что надо свою dll - потому, что при попытке распаковать файл с переименованным расширением, скажем: wav в 7z выскакивает диалог открытия файлов из этой dll и требует какой-то -VOLUME файл, после чего программа вылетает, а мне надо: 
Код

MessageBox(handle, 'Не удалось распаковать файл!', 'Ошибка чтения файла!', MB_ICONWARNING);


Это сообщение отредактировал(а) Georg97 - 19.5.2013, 17:05
PM MAIL   Вверх
StranikS
Дата 19.5.2013, 20:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 39
Регистрация: 1.2.2006

Репутация: нет
Всего: 2



Цитата(Georg97 @ 19.5.2013,  16:42)
Спасибо конечно, но можно как-то без dll или свою хотя-бы написать (есть исходники у кого)?

Самому? Зачем изобретать велосипед?
Если не хотите чтоб с экзешником таскались лишние файлы, то можно dll защить в ресурс и прикомпилить к exe-файлу, а затем извлекать из ресурса в TEMP и пользоваться ей, когда прога запущена.
PM MAIL   Вверх
northener
Дата 20.5.2013, 00:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(Georg97 @  19.5.2013,  16:42 Найти цитируемый пост)
Почему  говорю, что надо свою dll - потому, что

Ну пусть так. Но всё-таки почему
Цитата(Georg97 @  18.5.2013,  14:48 Найти цитируемый пост)
желательно с ассемблерными вставками
?

Цитата(Georg97 @  19.5.2013,  16:42 Найти цитируемый пост)
2. Я так понимаю что 7za.dll,  что 7z.dll написаны на ассемблере?

С чего вы это взяли?


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Georg97
Дата 20.5.2013, 01:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 38
Регистрация: 30.3.2010

Репутация: нет
Всего: нет



Цитата(northener @ 20.5.2013,  00:25)
С чего вы это взяли?

А у вас есть pas - файл?
Поделитесь!
PM MAIL   Вверх
northener
Дата 20.5.2013, 02:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(Georg97 @  20.5.2013,  01:35 Найти цитируемый пост)
А у вас есть pas - файл?
Поделитесь! 

Даже если бы у меня был тот "pas - файл" , я не стал бы делиться с первым встречным!


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
david_yu
Дата 20.5.2013, 06:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 13.10.2006

Репутация: нет
Всего: нет



есть http://sageshome.net/oss/paszlib-sg.php

Этот ответ добавлен с нового Винграда - http://vingrad.com
PM MAIL   Вверх
Georg97
Дата 20.5.2013, 17:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 38
Регистрация: 30.3.2010

Репутация: нет
Всего: нет



Цитата(StranikS @ 19.5.2013,  13:13)
Вот пожалуйста, модуль для работы с библиотекой 7z.dll. В архиве:
- сам модуль SevenZIP.pas, его надо прикрутить к программе в разделе uses;
- последняя версия 7z.dll - взят мной из 7-zip 9.20, его нужно закинуть в папку с вашей программой
- readme-файл с описанием.

Че-то выдает ошибку not enough actual parameters!
Код

 procedure TMainForm.ExtractAllClick(Sender: TObject);
 var
   Arch: I7zOutArchive;
 begin
   Arch := CreateOutArchive(CLSID_CFormat7z);//На против этой строки (выделяет скобки)? А в остальном - нет, ни каких проблем...
...

Для чего мне не нужно dll - да для того, что если я захочу создать 64-разрядный проект, то делфа будет оч здорого материться (вернее ее компилятор).

Цитата(david_yu @ 20.5.2013, 06:01)
есть http://sageshome.net/oss/paszlib-sg.php

Ну и где написано, что она поддерживает 7z или LZMA?

Добавлено @ 18:08
Цитата(northener @ 20.5.2013,  02:00)
Цитата(Georg97 @  20.5.2013,  01:35 Найти цитируемый пост)
А у вас есть pas - файл?
Поделитесь! 

Даже если бы у меня был тот "pas - файл" , я не стал бы делиться с первым встречным!

Я наверное оговорился - поделитесь ссылкой...

Это сообщение отредактировал(а) Georg97 - 20.5.2013, 18:11
PM MAIL   Вверх
northener
Дата 21.5.2013, 01:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(Georg97 @  20.5.2013,  17:54 Найти цитируемый пост)
Для чего мне не нужно dll - да для того, что если я захочу создать 64-разрядный проект, то делфа будет оч здорого материться (вернее ее компилятор).

Да ну! Неужели аж сам компилятор будет ругаться?


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Slavikus
Дата 21.5.2013, 14:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 0
Регистрация: 19.2.2012

Репутация: нет
Всего: нет



http://sourceforge.net/projects/tpabbrevia/



Этот ответ добавлен с нового Винграда - http://vingrad.com
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1027 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.