Einzelnen Beitrag anzeigen

DieDolly

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

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

  Alt 1. Mai 2023, 10:10
So ganz verstehe ich deine Antwort nicht.
Ich halte mich da an die UI von 7z selber. Schaltet man das Level SPEICHERN (0) ein, kann man dort keine Kompressionsmethode wählen.
So gehe ich auch vor, also setze ich nur das Level, aber keine Methode. Aber selbst wenn man die manuell auf Copy setzt, gehts zurück zu LZMA (alles mit EncryptHeaders)

Es funktioniert also nicht. Beide Bibliotheken haben dieselbenm Probleme.

Nochmal zusammengefasst:
setzt man EncryptHeaders, kann man Level=SPEICHERN nicht nutzen, da es dann immer LZMA ist. Die 7z-UI kann das alles anders. Es funktioniert wunderbar, bis man ein Passwort und EncryptHeaders setzt

Ansonsten bin ich auch zufrieden. Die Aufrufe sind einfach und kurz. Nur das mit der 7z.dll ist komisch. Und für den ProgressCallback bin ich zu doof.

Das mit dem Callback habe ich so gemacht
Delphi-Quellcode:
type
 TProgressCallback = class
 public
  function OnProgress(const Sender: I7zArchive; current, total: Int64): HRESULT;
 end;

// Beim Aufruf
ProgressCallback := TProgressCallback.Create;
libWriter := New7zWriter(fh7z);
libWriter.SetProgressCallback(ProgressCallback.OnProgress);

Geändert von DieDolly ( 1. Mai 2023 um 12:33 Uhr)
  Mit Zitat antworten Zitat