Логин: Пароль:    Регистрация Всеми возможностями сайта можно пользоваться
только после авторизации.
   Забыли пароль?

Поиск
L



Статистика
u
Пользователи онлайн: нет
Гостей онлайн: 8
Всего онлайн: 8
Зарегистрировано юзеров: 7937
Комментариев на сайте: 698
Новый юзер: Micahmum



Последние комментарии
c
Dennisvoifs прокомментировал "Урок 3 - Конструкция IF...THEN...ELSE":
Пункт коммерческого учета цена, Ктп комплектные трансформаторные подстанции москва, Производство ктп москва и не только Вы найдете на нашем специализированном сайте: - Вам к нам!https://sviloguzov.ru/
Arthurneime прокомментировал "Урок 53 - Потоки в Delphi, (часть 1/3)":
[img]https://masterfutures.ru/wp-content/uploads/2020/03/14-2.png[/img] Online trading is becoming increasingly popular, as more people learn of the earning potential of platforms such as Broker, a broker which caters to a significant audience of digital traders (12 million and counting). Known for their excellent user interface, as well as fast deposit and withdrawal times, Broker provides multiple features to help traders earn on the markets. This overview will outline just some of the key aspects traders can expect to enjoy whilst working with Broker broker. Online trading is becoming increasingly popular, as more people learn of the earning potential of platforms such as Broker, a broker which caters to a significant audience of digital traders (12 million and counting). Known for their excellent user interface, as well as fast deposit and withdrawal times, Broker provides multiple features to help traders earn on the markets. This overview will outline just some of the key aspects traders can expect to enjoy whilst working with Broker broker. Broker Broker is operated by a dedicated team, whose main priority has always been to provide the best possible user experience, and ultimately satisfaction. Whether experienced in trading or a newcomer, the platform is easy to use and very responsive. The education section deserves special mention, particularly for assisting traders to learn and implement new strategies – which can be tested on the platforms free demo Source: [url=https://bit.ly/35fv3B6/]Broker[/url] https://bit.ly/35fv3B6/ Tags: Broker

Урок 71 - Работа с сжатыми файлами

В этом уроке мы рассмотрим библиотеку "7z.dll", с её помощью можно распаковывать архивы такого типа:

     Zip, BZ2, Rar, Arj, Z, Lzh, 7z, Cab, Nsis, Lzma, Pe, Elf, Macho, Udf, Xar, Mub, Hfs, Dmg, Compound, Wim, Iso, Bkf, Chm, Split, Rpm, Deb, Cpio, Tar, GZip

   Практически все существующие архивы. Попытаемся распаковать архив типа Zip. Для этого создадим проект и сам архив, назовем его 1.zip и положим рядом с программой.

   На форму вытащим кнопочку и напишем в событии OnClick вот такой код:

begin
  // Распаковывает файлы 
  with CreateInArchive(CLSID_CFormatZip) do
   begin
     OpenFile(ExtractFilePath(ParamStr(0)) + '1.zip');
     ExtractTo(ExtractFilePath(ParamStr(0)) + '1');
   end;
end;
   После, рядом с программой появится папка "1", с содержимым архива. И не забудьте подключить в Uses модуль SevenZip, его вы найдете в конце данного урока.

   Также можно создать архив:
begin
  // Добавляет файлы 
  with CreateInArchive(CLSID_CFormatZip) do
   begin
	 Arch.AddFile('Имя файла');
	 Arch.SaveToFile('Имя архива');
   end; 


   Задать уровень сжатия можно функцией SetCompressionLevel(Arch: I7zOutArchive, Level: Integer);. Как видите все просто.

   Для работы с другими архивами надо изменить константу CLSID_CFormatZip . Например для .Rar архива, константа будет иметь вид CLSID_CFormatRar, полный список можно увидеть кликнув по константе с зажатым Ctrl.

Удачи!
Встретимся в следующем уроке!

Зарегистрируйтесь или авторизуйтесь, чтобы скачать.

Источник: www.thedelphi.ru
Автор: Савельев Александр
Опубликовано: 2 Августа 2013
Просмотров:

Урок 70 - Динамические библиотеки DLL Урок 72 - Получение хеша файла

Зарегистрируйтесь или авторизуйтесь, чтобы добавлять комментарии.



аватар Добавил(а): Oleg_Guz [Новичок] Дата: 2013-12-04
Работает на УРА!




аватар Добавил(а): diggiti9105 [Новичок] Дата: 2013-12-13
выдает ошибку в юните 7z в начале, пишет не допустимы входной файл "п", если удалить он в другом месте выдает ошибку




аватар Добавил(а): man1207 [Новичок] Дата: 2014-03-15
diggiti9105, открой файл блокнотом и в меню Кодировки выбери UTF-8 (без BOM), сохрани и будет тебе счастье.




аватар Добавил(а): nik095 [Новичок] Дата: 2014-08-01
А никто не знает, как можно получить ClassId для CreateInArchive? Вариант посмотреть расширение файла архива не подходит )




аватар Добавил(а): Zeld [Новичок] Дата: 2014-08-17
Чет у меня ни как не хочет работать, 7z.dll кинул в папку с проектом. SevenZip в Uses прописал. Но на на SevenZip в uses и ругается(




аватар Добавил(а): Zeld [Новичок] Дата: 2014-08-17
Так, с SevenZip вопрос решил. Теперь, при выполнение распаковки архива, программа ругается на 7z.dll, хотя в папке всё ещё dll лежит




аватар Добавил(а): Alexandr_7 [Новичок] Дата: 2016-01-21
Тоже самое может кто поможет решить проблему. SevenZip скачал от сюда. а САМИ БИБЛИОТЕКИ СПЕР У 64 БИТНОЙ 7Zip обе версии как 32 так и просто 7zip и положил вместе с проэктом.




аватар Добавил(а): Alexandr_7 [Новичок] Дата: 2016-01-21
Решил проблему скачав 7zip для 32 битной винды и взяв от туда 7z.dll Но вопрос следующий. Как можно вывести процесс распаковки Помогите плиз.




аватар Добавил(а): Oleg_Guz [Новичок] Дата: 2016-05-06
Arch.SetProgressCallback(nil,ProgressCallback);




аватар Добавил(а): Tino [Новичок] Дата: 2016-10-22
--------------------------- Project1 --------------------------- Error loading library 7z.dll. --------------------------- ОК ---------------------------




аватар Добавил(а): niaz-gtn [Новичок] Дата: 2017-09-06
7z.dll - приложите.




аватар Добавил: Aqel [Новичок] Дата: 2018-08-15
Вопрос как распаковать только определённые папки/файлы?




аватар Добавил(а): Pingitrus [Новичок] Дата: 2018-09-04
Есть еще кто нибудь живой на этом сайте, кто сможет помочь? Так то все работает, zip и rar распаковывает, но у меня есть файл dat который сжат GZip, почему то его не удается распаковать или так не получится так как этот файл не является архивом или является?)) пишет ошибку что неверная функция




аватар Добавил: Aqel [Новичок] Дата: 2018-09-12
GZip псевдоархив, на мой вопрос тоже не отвечают, как распаковать отдельные файлы/папки...




аватар Добавил: Aqel [Новичок] Дата: 2018-09-27
uses ...sevenzip, ... function ProgressCallback(sender: Pointer; total: boolean; value: int64): HRESULT; stdcall; begin if total then Form1.sprgrsbr1.Max:= value else Form1.sprgrsbr1.Position:= value; Result:= S_OK; end; function Decompress(FileName, DestDir, ArcFname: String; ArcDir: Boolean ): Boolean; var i: Integer; ItP: string; items: array[1..11] of Cardinal; sprgrsbr1: TsProgressBar; begin Result:= False; Application.ProcessMessages; try with CreateInArchive(CLSID_CFormat7z) do begin OpenFile(FileName); SetProgressCallback(sprgrsbr1, ProgressCallback); for i:= 1 to NumberOfItems - 1 do if not ItemIsFolder[i] then //ExtractItem(items[i], Steam, False); - как ей пользоваться в душе не понимаю... ExtractTo(DestDir); end; finally Result:= True; end; end;