Форум » [x]Harbour » Совместимость архивов » Ответить

Совместимость архивов

Dima: По следам Темы [pre2] Harbour 1.1, 2.0 Связка 1 (создаем zip с паролем) HB_zipfile -> HB_UnzipFile = OK HB_zipfile -> Winrar = Bad // пароль не подходит HB_zipfile -> Winzip = Bad // пароль не подходит HB_zipfile -> pkuzip = Bad // пароль не подходит HB_zipfile -> Far Manager = Bad // пароль не подходит HB_zipfile -> Total Commander = Bad // пароль не подходит XHarbour 1.1 Связка 2 (создаем zip с паролем) HB_zipfile -> HB_UnzipFile = OK HB_zipfile -> Winrar = OK HB_zipfile -> Winzip = OK HB_zipfile -> pkuzip = OK HB_zipfile -> Far Manager = OK HB_zipfile -> Total Commander = OK Вопрос думаю очевиден. Что Harbour делает не так при создании архива с паролем. [/pre2]

Ответов - 31, стр: 1 2 All

Loach: Извини, если не в тему, но у меня когда-то давно было что-то вроде такой гадости. Чуть мозг себе не сломал. Потом оказалось, что dll (если конкретно xHBZipDll.dll) была старая, а комплил на новом xHb... Может дело все-таки в библиотеках?

Dima: Loach пишет: если конкретно xHBZipDll.dll В принципе да лежит такая DLL в System32 , это вроде от коммерческого Xharbour (стоит такая хрень у меня), но я же ни где ее не цепляю а уж тем более в Harbour

PSP: Дима, я сейчас попробывал. Вроде работает. HB_ZipFile( "a.zip", { "a.txt" }, ,,, "asd" ) Архив a.zip открывается в Far, TC, 7-zip Winrar ставить неохота... :)


Dima: PSP А как собирал ? t.prg proc main HB_ZipFile("test",{"111.bmp"},,,,"111") return hbmk2 t -lhbmzip -lhbziparc Пароль не принимается.

PSP: Да. Я использовал эти две библиотеки.

Dima: PSP пишет: Да. Я использовал эти две библиотеки. полтергейст..........

Dima: PSP пишет: Дима, я сейчас попробывал. Вроде работает. HB_ZipFile( "a.zip", { "a.txt" }, ,,, "asd" ) Архив a.zip открывается в Far, TC, 7-zip Winrar ставить неохота... :) И в какую сторону копать что бы и у меня работало ?

PSP: У меня установлена финальная сборка Harbour-а 2.0.0 (rev.13372). Я не вникал глубоко в zip-ы, но вот этот простой пример работает. Может у тебя версии (библиотеки) перепутались?

Dima: PSP пишет: У меня установлена финальная сборка Harbour-а 2.0.0 (rev.13372) Так и у меня такая же. Библы [pre2] 22.12.2009 17:04 36 864 hbmzip.lib 22.12.2009 17:05 8 704 hbziparc.lib 22.12.2009 17:00 60 416 hbzlib.lib [/pre2]

PSP: У меня: hbmzip.lib 23.12.09 04:04 36864 hbziparc.lib 23.12.09 04:05 8704 hbzlib.lib 23.12.09 04:00 60416 Сейчас скачал эту сборку в архиве (7z) с Sourceforge. Тоже самое.

Dima: PSP А не кинешь в меня этими 3 библами (так как не знаю уже где копать) ? dimkaclipper @ mail . ru

Dima: Вот мои библы , пробни с ними собрать http://files.mail.ru/VA9NYO Вот архив (пароль 1) hb_unzipfile его понмает , все остальное пароль не принимает http://files.mail.ru/X4BKDH

PSP: Твой архив test.zip у меня открывается всеми теми же программами. Библиотеки твои по-позже попробую.

Dima: PSP пишет: Твой архив test.zip у меня открывается всеми теми же программами Хммм , у меня не открываются. Открываются и признают пароль только когда тот же пример собран на Xharbour. Как такое может быть ?

PSP: С твоими библами тоже все работает. Dima пишет: Как такое может быть ? Попробуй открыть мой архив: http://files.mail.ru/12YOUE Пароль - 1.

Dima: PSP пишет: Попробуй открыть мой архив Открыл только с помощью hb_unzipfile Со всем остальным та же ситуация , пароль не принят. PS Коммерческий Xharbour снес , до ср..и дверцы

PSP: Я вот не знаю... Принимает ли винда участие в этих процессах...

Dima: PSP мдя , застрял я на ровном месте.......

PSP: Подожди. Кто-нить подскажет. Я тоже застрял...

Dima: Вот что пишет pkunzip старый досовый при распаковке твоего файлика [pre2] pkunzip test.zip -s1 PKUNZIP (R) FAST! Extract Utility Version 4.1v 2-04-94 Copr. 1989-1994 PKWARE Inc. All Rights Reserved. PKUNZIP/h for help PKUNZIP Reg. U.S. Pat. and Tm. Off. Searching ZIP: TEST.ZIP PKUNZIP: (W14) Warning! Incorrect password for file: init.cld PKUNZIP: (E11) No file(s) found. [/pre2]

Dima: Ладно проехали. Обновил версию Total Comander он и открыл архив. Winrar и Far сопротивляются , ну и бог с ними ;) (версии самые свежие) PSP СПАСИБО !!!

PSP: Да не за что... Поробуй 7-zip. Бесплатный, быстрый, универсальный...

Andrey: Попробуй на другом компе или поставь себе в эту же систему VirtualBox или Vmware workstation.....

Петр: А зачем Диме ставить 7-zip или VirtualBox ? (Хотя они конечно не помешают и у меня установлены ) Я так понял вопрос несколько в другом. Дима - вот пример - "пища для ума", если хотите можете искать где собака порылась, а можете обойтись существующими решениями [pre2]#include "hbzlib.ch" PROCEDURE main() LOCAL hZip, cBuff /* * test 1 * Используем hbziparc */ HB_ZipFile( "test1", {"t.prg"},,,, "111" ) /* * test 2 * Примерно так работает HB_ZipFile из hbziparc * надстройка над hbmzip */ hZip := hb_ZipOpen( "test2.zip" ) hb_ZipFileCreate( hZip, "t.prg", NIL, NIL, NIL, NIL, NIL, NIL, "111" ) cBuff := hb_memoread( "t.prg" ) hb_ZipFileWrite( hZip, cBuff, Len(cBuff) ) hb_ZipFileClose( hZip ) /* * test 3 * А этот пример написан по мотивам hbmzip\tests\myzip */ hZip := hb_ZipOpen( "test3.zip" ) hb_ZipStoreFile( hZip, "t.prg", "t.prg", "111" ) hb_ZipClose( hZip ) RETURN[/pre2]

PSP: Петр пишет: А зачем Диме ставить 7-zip Ну, не для решения его вопроса, конечно... Чтобы было.

Dima: Петр Спасибо ! Xharbour 1.1 + Far для открытия c коментом #include "hbzlib.ch" hb_memoread -> memoread test1.zip - OK test2.zip - Bad pass test3.zip - OK Harbour 2.0 test1.zip - Bad pass test2.zip - Bad pass test3.zip - OK Стоит подумать однако.

Петр: Как по мне - без анализа исходников hbmzip, реализация HB_ZipFile (или hb_ZipFileWrite) не совсем корректная. Так что если хотите одновременно юзать архивы и xHb и harbour , и Far/Rar используйте вариант 3 или перепишите для harbour HB_ZipFile c использованием hb_ZipStoreFile

Dima: Петр Понял а как объяснить что Total Commander понял без проблем все 6 архивов ?

Петр: Возможно два варианта или Total Commander такой шибко умный, что использует механизм коррекции ошибок, или плевать он хотел на все вроде бы ошибки и просто игнорирует их; или даже третий вариант - метод используемый в Harbour корректный, но еще не повсеместно используемый. Кстати 7zip открывает тоже эти архивы без вопросов. P.S. В пользу третьего варианта говорит и то, что TC открыл файлы только после обновления.

Dima: Петр Спасибо !!!

PSP: "Вот оно чё, Михалыч, вот оно чё..." Спасибо, Петр!



полная версия страницы