Перейти к содержанию
Fire Monkey от А до Я
  • 0

Возможна работа с паролем в Tzipfile?


Vitaldj

Вопрос

Коллеги, как то был задан вопрос в теме: 

Так вот, вроде Берлин обещал работать с заправленными архивами zip. Поискал в доках, нашел только это упоминание про работу с разархивированием запароленных. тут

Но не слова про создание запароленных архивов. Есть ли инфа по этому поводу? Поисковые сервера не помогли(((

Ссылка на комментарий

Рекомендуемые сообщения

  • 0

так есть же 7zip и там можно через командную строку все что хошь делать!

7zip в ресурс (можно внешне таскать экзешник), при работе программы выгружать из ресурса и делать все что надо в фоне!

если речь конечно же о windows!

Ссылка на комментарий
  • 0
7 часов назад, wamaco сказал:

так есть же 7zip и там можно через командную строку все что хошь делать!

7zip в ресурс (можно внешне таскать экзешник), при работе программы выгружать из ресурса и делать все что надо в фоне!

если речь конечно же о windows!

Вот в этом то и проблема! С 7zip я великолепно работал предыдущие 10 лет, теперь нужны и мак ос и потом iOs с андрюшей. ))

Ссылка на комментарий
  • 0
10 минут назад, Rusland сказал:

Может быть попробуете прикрутить Java библиотеку Zip4J?

О, Rusland это не ко мне)) Я не профессиональный программист.

Ссылка на комментарий
  • 0
22 часа назад, Vitaldj сказал:

Есть ли инфа по этому поводу

Я бы посоветовал Вам использовать системные возможности. Не знаю как для iOS и Android, но для Windows и OSX работает все превосходно.

Посмотрите Здесь для Windows и Здесь для OSX

Ссылка на комментарий
  • 0
1 час назад, dnekrasov сказал:

Я бы посоветовал Вам использовать системные возможности. Не знаю как для iOS и Android, но для Windows и OSX работает все превосходно.

Посмотрите Здесь для Windows и Здесь для OSX

Спасибо огромное. Скоро в отпуск, не досуге подумаю!

Ссылка на комментарий
  • 0

Vitaldj, тогда можете купить готовое решение от Winsoft c использованием Zip4J (сегодня выложили после моего обращения) :)

PS. Но надеюсь что кто-нибудь скомпилирует  Zip4J и выложит сюда готовое решение (вдруг в будущем пригодится) :)

Ссылка на комментарий
  • 0
  • Модераторы
37 минут назад, Rusland сказал:

Vitaldj, тогда можете купить готовое решение от Winsoft c использованием Zip4J (сегодня выложили после моего обращения) :)

PS. Но надеюсь что кто-нибудь скомпилирует  Zip4J и выложит сюда готовое решение (вдруг в будущем пригодится) :)

По ссылке, в первом посте, я как раз упоминал Zip4J, более того даже пример выкладывал. Но Zip4J подходит для андроида.

Про Winsoft, опять же с того момента, когда писал заметку, ничего не изменилось, всё также не понятно за что платить им, если они используют в своём компоненте только эту либу, проще скачать её и добавить в проект самостоятельно. Пример использования можно глянуть тут Расширенные возможности работы с zip файлами, бесплатно и без СМС (заметка негодования, так что можно не читать, просто скачать пример :)

 

p.s. Тут похоже ТС'у желательно найти универсальную либу, но я таких не встречал.

Ссылка на комментарий
  • 0
5 минут назад, Andrey Efimov сказал:

По ссылке, в первом посте, я как раз упоминал Zip4J, более того даже пример выкладывал. Но Zip4J подходит для андроида.

Про Winsoft, опять же с того момента, когда писал заметку, ничего не изменилось, всё также не понятно за что платить им, если они используют в своём компоненте только эту либу, проще скачать её и добавить в проект самостоятельно. Пример использования можно глянуть тут Расширенные возможности работы с zip файлами, бесплатно и без СМС (заметка негодования, так что можно не читать, просто скачать пример :)

 

p.s. Тут похоже ТС'у желательно найти универсальную либу, но я таких не встречал.

Мда, прикольно)))

Но, коллеги, андроид меня как раз меньше всего интересует! Более всего MacOs и Windows. 

Ссылка на комментарий
  • 0
14 часов назад, Andrey Efimov сказал:

По ссылке, в первом посте, я как раз упоминал Zip4J, более того даже пример выкладывал. Но Zip4J подходит для андроида.

Про Winsoft, опять же с того момента, когда писал заметку, ничего не изменилось, всё также не понятно за что платить им, если они используют в своём компоненте только эту либу

Зато в письме они мне ответили: "we have created a new version" :lol:

 

Пример использования можно глянуть тут Расширенные возможности работы с zip файлами, бесплатно и без СМС (заметка негодования, так что можно не читать, просто скачать пример :)

А ведь я уже читал когда-то данную статью, но забыл :)

Изменено пользователем Rusland
Ссылка на комментарий
  • 0

Тема старая, но вот тоже понадобилось работать с запаролеными zip архивами в Windows.

Наткнулся на это http://www.uweraabe.de/Blog/2017/05/07/tzipfile-with-password-encryption-part-3/

Там статья из трех частей. Если кратко то в третьей части можно скачать конечный результат модуля, во второй, в комментах есть пример работы.

Все в сборе приаттачил к сообщению :)

Проверил, вроде работает. Из минусов если добавлять в архив папку с файлами(ZipDirectoryContents) то файлы не паролятся, ну это не проблема.

 

ZipTest.rar

Ссылка на комментарий
  • 0
3 часа назад, Mars M сказал:

Тема старая, но вот тоже понадобилось работать с запаролеными zip архивами в Windows.

Наткнулся на это http://www.uweraabe.de/Blog/2017/05/07/tzipfile-with-password-encryption-part-3/

Там статья из трех частей. Если кратко то в третьей части можно скачать конечный результат модуля, во второй, в комментах есть пример работы.

Все в сборе приаттачил к сообщению :)

Проверил, вроде работает. Из минусов если добавлять в архив папку с файлами(ZipDirectoryContents) то файлы не паролятся, ну это не проблема.

 

ZipTest.rar

Спасибо! А там только для windows? Или и для мака подойдет?

Ссылка на комментарий
  • 0

Все хорошо, но TZipFile пока сырой, например при распаковки множества файлов вылетает ошибка что то там с потоком, название ошибки точно не помню.

Думал у меня так, но поискал в инете тоже с этим сталкиваются.

Вобщем посидел сейчас с исходниками ZipForge, вроде получилось переделать под FMX :)

Пару примеров с их сайта попробовал, вроде работает.

Единственно что отключил модуль ZFFolderDialog.pas, не знаю для чего он, но мне точно не нужен :)

Начал было портировать, потом плюнул, если кто хочет может сам доделать, нужно раскомментировать в uses модуля FMX.ZipForge.pas

Проверьте кто хочет, при наличии ошибок сообщите, компонент нужный и хотелось бы его добить.

PS:  ZipForge конечно только под WIN.

PPS: Компонент не устанавливается, просто в uses подключить FMX.ZipForge

 

 

ZipForgeFMX.v.6.80.rar

Ссылка на комментарий
  • 0
В 25.08.2017 в 13:26, Mars M сказал:

Тема старая, но вот тоже понадобилось работать с запаролеными zip архивами в Windows.

Наткнулся на это http://www.uweraabe.de/Blog/2017/05/07/tzipfile-with-password-encryption-part-3/

Там статья из трех частей. Если кратко то в третьей части можно скачать конечный результат модуля, во второй, в комментах есть пример работы.

Все в сборе приаттачил к сообщению :)

Проверил, вроде работает. Из минусов если добавлять в архив папку с файлами(ZipDirectoryContents) то файлы не паролятся, ну это не проблема.

 

ZipTest.rar

Здравствуйте, посмотрел Ваш пример.. добавил чтение фалов в потоке (без пароля), все работает. Как только пытаюсь прочитать архив с паролем сразу вываливается ошибка..

procedure ExtractToFile2(
  const ZipFileName: string;
  const ZippedFileIndex: Integer;
  const ExtractedFileName: string
);
var
  ZipFile: TEncryptedZipFile;
  DownloadedStream, DecompressionStream, OutputStream: TStream;
  LocalHeader: TZipHeader;
  bmp: tBitmap;
begin
  bmp:= tBitmap.Create;
  DownloadedStream := TFileStream.Create(ZipFileName, fmOpenRead);
  try
    ZipFile := TEncryptedZipFile.Create(CSPassword);
    try
      ZipFile.Open(DownloadedStream, zmRead);
      ZipFile.Read(ZippedFileIndex, DecompressionStream, LocalHeader);
      try
        OutputStream := TMemoryStream.Create;
        try
          OutputStream.CopyFrom(DecompressionStream, DecompressionStream.Size);// тут все падает
          bmp.LoadFromStream(OutputStream);
          fmMain.Image1.Bitmap.Assign(bmp);
        finally
          OutputStream.Free;
          bmp.Free;
        end;
      finally
        DecompressionStream.Free;
      end;
    finally
      ZipFile.Free;
    end;
  finally
    DownloadedStream.Free;
  end;
end;

Подскажите, пжл, что делаю не так (проект во вложении)?

ps: Berlin 10.2

png.png

Изменено пользователем Dmitry Stolyarov
Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...