AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign d7zip / sevenzip.pas von mail2nnv - Fragen zur Funktionsweise, DictionarySize, ...

d7zip / sevenzip.pas von mail2nnv - Fragen zur Funktionsweise, DictionarySize, ...

Ein Thema von DieDolly · begonnen am 29. Apr 2023 · letzter Beitrag vom 9. Mai 2023
Antwort Antwort
Seite 1 von 3  1 23   
Benutzerbild von dummzeuch
dummzeuch

Registriert seit: 11. Aug 2012
Ort: Essen
1.735 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

AW: d7zip / sevenzip.pas von mail2nnv - Fragen zur Funktionsweise, DictionarySize, ..

  Alt 30. Apr 2023, 16:39
Ich hatte gehofft, dass das einfach eine C API ist, aber anscheinend benutzt es Interfaces, die "irgendwie" initialisiert werden müssen (laut readme.txt im DOCS-Verzeichnis). Das ist mir auf die Schnelle zu komplex. d7zip macht das anscheinend auch.

Ich hätte nämlich definitiv Interesse an einer funtionierenden Import-Unit für die 7z.dll, da ich nach meinem Urlaub damit große Dateien ein- und auspacken wollte, und zwar idealerweise mit bzip2.
(Für ZIP funktionieren die jcl-Units problemlos, die verwenden wir schon seit Ewigkeiten.)
Thomas Mueller
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#2

AW: d7zip / sevenzip.pas von mail2nnv - Fragen zur Funktionsweise, DictionarySize, ..

  Alt 30. Apr 2023, 16:47
Genau, ZIP ist OK. Da kann man auch die Kompressionsmethode aussuchen. Bei 7z hört es dann aber schon auf, das ist wie ich finde eine grundlegende Option, die JclCompression nicht bietet.
Ja, ein Wunschtraum. Eine funktionierende, aktuelle Schnittstelle, damit man die 7z.dll richtig nutzen kann.
Ich kann es leider nicht, weil ich keine Ahnung habe. Aber warum scheint das Thema so uninteressant zu sein? Es gibt große Komponenten, ja. Aber 7z.dll ist einfach das Beste was man nutzen kann.
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch

Registriert seit: 11. Aug 2012
Ort: Essen
1.735 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#3

AW: d7zip / sevenzip.pas von mail2nnv - Fragen zur Funktionsweise, DictionarySize, ..

  Alt 30. Apr 2023, 16:51
Genau, ZIP ist OK. Da kann man auch die Kompressionsmethode aussuchen. Bei 7z hört es dann aber schon auf, das ist wie ich finde eine grundlegende Option, die JclCompression nicht bietet.
Ja, ein Wunschtraum. Eine funktionierende, aktuelle Schnittstelle, damit man die 7z.dll richtig nutzen kann.
Ich nehme mein Notebook mit in den Urlaub, aber ich glaube nicht, dass ich Zeit finden werde, mich damit zu beschäftigen.
Thomas Mueller
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: d7zip / sevenzip.pas von mail2nnv - Fragen zur Funktionsweise, DictionarySize, ..

  Alt 30. Apr 2023, 17:43
Ich bin auch die nächsten zwei Wochen im Urlaub und rein vom Kopf her denke ich mir das es wohl nicht verkehrt sein kann sich mit der CLI Anwendung anzufreunden, die bietet halt nur das an was es tatsächlich auch gibt.
Die 7-Zip SDK Header sehen abschreckend aus.
Hier im Forum glaube ich auch vor einer Ewigkeit mal was von einer Custom-Übersetzung gesehen zu haben.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#5

AW: d7zip / sevenzip.pas von mail2nnv - Fragen zur Funktionsweise, DictionarySize, ..

  Alt 30. Apr 2023, 17:55
Die CLI-Anwendung hat sicher keinen dauerhaften Callback der über den Fortschritt Info gibt, oder?
  Mit Zitat antworten Zitat
mmw
(Gast)

n/a Beiträge
 
#6

AW: d7zip / sevenzip.pas von mail2nnv - Fragen zur Funktionsweise, DictionarySize, ..

  Alt 30. Apr 2023, 18:40
Hallo,
evtl. interessant

https://github.com/geoffsmith82/d7zip

Gruß
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#7

AW: d7zip / sevenzip.pas von mail2nnv - Fragen zur Funktionsweise, DictionarySize, ..

  Alt 30. Apr 2023, 18:44
sevenzip.pas 12 Jahre alt, noch älter als die von mir im ersten Beitrag genannte. Die im ersten Beitrag genannte sevenzip.pas zeigt bei Github an, dass sie nur 1 Jahr alt ist. Kann ja auch sein, aber der Inhalt ist im Prinzip auch nur von vor über 10 Jahren.

Geändert von DieDolly (30. Apr 2023 um 18:47 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.590 Beiträge
 
Delphi 12 Athens
 
#8

AW: d7zip / sevenzip.pas von mail2nnv - Fragen zur Funktionsweise, DictionarySize, ..

  Alt 1. Mai 2023, 14:47
Und noch etwas zum ersten Post

Zitat:
Delphi-Quellcode:
function ProgressCallback(Sender: Pointer; Total: Boolean; Value: Int64): HRESULT; stdcall;
begin
 BytesCopied := Value; // Test

 if Total then
  Form1.ProgressBar1.Max := 100
 else
  Form1.ProgressBar1.Position := GetPercent(BytesToCopy, BytesCopied);

 Result := S_OK;
end;

Arch.SetProgressCallback(nil, ProgressCallback);
Rate mal, warum solche Funktionen fast immer sowas wie einen frei benutzbaren "Data"-Parameter besitzen?

Delphi-Quellcode:
function ProgressCallback(Sender: Pointer; Total: Boolean; Value: Int64): HRESULT; stdcall;
begin
 //if Total then
 // TForm1(Sender).ProgressBar1.Max := 100
 //else
 // TForm1(Sender).ProgressBar1.Position := GetPercent(BytesToCopy, Value);

 if Total then begin
   TForm1(Sender).FBytesToCopy := Value;
   TForm1(Sender).ProgressBar1.Max := 100;
 end else
   TForm1(Sender).ProgressBar1.Position := GetPercent(TForm1(Sender).FBytesToCopy, Value);

 Result := S_OK;
end;

Arch.SetProgressCallback(Pointer(Form1), ProgressCallback);
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 1. Mai 2023 um 14:49 Uhr)
  Mit Zitat antworten Zitat
EdAdvokat

Registriert seit: 1. Mai 2016
Ort: Berlin
419 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#9

AW: d7zip / sevenzip.pas von mail2nnv - Fragen zur Funktionsweise, DictionarySize, ..

  Alt 1. Mai 2023, 17:57
Hallo zusammen,
eure Diskussion finde ich recht interessant, auch wenn ich selbst da nicht so der Fuchs bin.
Ich habe da mal so einiges zu 7zip recherchiert und bin da auf folgenden Beitrag aus der DP gestoßen.
Möglicherweise hilft der etwas weiter. Der Motzi hat im #17 ein Demoprogramm gepostet, das euch möglicherweise
weiter bringen könnte.

Wenn es völlig daneben sein sollte, bitte Entschuldigung.

https://www.delphipraxis.net/108543-...einbinden.html

Bei Torry.net habe ich auch noch was gefunden. Ist leider auch nicht ganz neu:

https://torry.net/quicksearchd.php?S...nzip&Title=Yes
Norbert
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#10

AW: d7zip / sevenzip.pas von mail2nnv - Fragen zur Funktionsweise, DictionarySize, ..

  Alt 1. Mai 2023, 18:10
Kann man mit dem I7zWriter von mormot auch leere Verzeichnisse ins Archiv einbringen?

Ich verzweifle da gerade dran.

Delphi-Quellcode:
   libWriter.AddFile('1\1 2 3.txt', '1\1 2 3.txt');
   libWriter.AddFile('empty123', 'empty123');
   libWriter.SaveToFile(FileName);
Am Ende ist nur die Textdatei im Archiv.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz