![]() |
TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
Hallo,
weil ich Probleme mit Dateien mit Umlauten in Abbrevia TABZipper habe, wollte ich TZipFile verwenden, aber egal welchen Komprimierungsmodus ich einstelle, ich bekomme immer diese Fehlermeldung: 'Unterstützung für Komprimierungsmethode nicht registriert' Hat jemand eine Idee dazu? Ciao Stefan |
AW: TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
Delphi-Quellcode:
Das wäre mein Tipp für Abbrevia/Unicode Namen.
if FItemInfo.IsUTF8 or (AbDetectCharSet(FItemInfo.FileName) = csUTF8) then FFileName := UTF8ToString(FItemInfo.FileName)
|
AW: TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
Wenn Tipps außerhalb Abbrevia und TZipFile erlaubt sind, dann empfehle ich JCL und 7z zu verwenden.
Ich bin damals von Abbrevia zu TZipFile, über irgendwas anderes dann zu JCL mit 7z gewechselt. Habe es nicht bereut. |
AW: TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
Hier ist Abbrevia und FlexCompress am Start, das letztere ist für uns echt gut.
|
AW: TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
Hallo,
etwas Code wäre schön. Und klappt es prinzipiell nicht, oder nur bei Umlauten? |
AW: TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
Mein Tipp :
![]() |
AW: TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
@zeras: Unterstützt dein Tipp Unicode? Ich finde auf dieser Webseite keine Informationen.
|
AW: TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
Zitat:
Mein Problem: Ich muss Dateien mit Umlauten zippen, egal womit ich zippe ist das augenscheinlich bei mir im Windows Explorer und im Totalcommander korrekt, die enthaltenen Dateien werden da korrekt angezeigt und sind extrahierbar, aber bei einem Anwender des fertigen Programms meckert der DATEV Importer dass er die enthaltene Datei nicht findet. Ein Kollege wiederum öffnet das Zip in seinem Totalcommander und sieht anstelle der Umlaute "Müllzeichen". Wie gehe ich das nun an? Ciao Stefan |
AW: TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
Screenshot von den "Müllzeichen" bitte.
|
AW: TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
Zitat:
Mache Datei AbZipTyp.pas auf und suche
Delphi-Quellcode:
das sollte/könnte der Fehler sein, eine korrektur nach
{ decode filename (ANSI/OEM/UTF-8) }
if FItemInfo.IsUTF8 or (AbDetectCharSet(FItemInfo.FileName) = csUTF8) then FFileName := UTF8ToString(FItemInfo.FileName)
Delphi-Quellcode:
sollte abhilfe schaffen.
{ decode filename (ANSI/OEM/UTF-8) }
if FItemInfo.IsUTF8 = csUTF8 then FFileName := UTF8ToString(FItemInfo.FileName) Zum testen ob bei Dir bzw Kunden nun alles richtig läuft empfehle ich Dir ![]() Die Test-Archive kannst Du natürlich auch mit jeder anderen Archiver Software auf korrektheit prüfen lassen. |
AW: TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
Liste der Anhänge anzeigen (Anzahl: 1)
Hier ein Screenshot im Anhang...
Die Datei heißt eigentlich Freizeitföüährer.pdf Was das Testen betrifft, ich brauche eigentlich den umgekehrten Weg: Ich muss wissen ob mein Zip korrekt ist und der entpackende Empfänger ein Problem hat... Das mit der Abbrevia-Änderung probiere ich aus... Ciao Stefan |
AW: TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo Stefan,
leider schreibst Du nicht, welche Version vom TotalCommander Dein Kollege verwendet, sieht auf dem Bildschirmfoto aber schon älter aus. Der aktuelle TotalCommander 9.12 öffnet und entpackt eine mit TZipFile gepackte Umlautdatei aus einer ZIP-Datei (siehe unten) problemlos. Der "DATEV Importer" wird von Dir nicht näher spezifiziert - es kann also sein, dass es vielleicht an der fehlenden "Unicode"-Unterstützung der Fremdprogramme liegen kann? Dann wäre die Aufgabenstellung eventuell eher, einen OEM/ANSI-Dateinamen in eine ZIP-Datei zu bekommen, um Kompatibilität herzustellen? Die Prüfung auf Korrektheit der ZIP-Datei ist so eine Sache: Bedeutet korrekt, dass die ZIP ![]() ![]() Doch zurück zu Deiner Frage und dem Titel: 'Unterstützung für Komprimierungsmethode nicht registriert' - da Du leider keinen Code gepostet hast, der zu dem Fehler führt, hier mal ein Beispiel, welches unter Delphi 10.2.3 und Windows 10 Build 1709 die beigefügt ZIP-Datei erstellt hat.
Delphi-Quellcode:
Die gepackte Datei Freißeitföüährer.txt kann mit Windows 10 und unter macOS 10.13 mit Bordmitteln sowie auf iPhone und iPad mit diversen Apps aus test.zip entpackt werden (Android gerade nicht parat) und die Umlaute bleiben intakt.
uses
System.Zip; procedure ZipAFile(const AArchiveName, AFilename: string); var LZip: TZipFile; begin LZip:=TZipFile.Create; try if FileExists(AArchiveName) then DeleteFile(AArchiveName); LZip.Open(AArchiveName, zmWrite); LZip.Add(AFilename); LZip.Close; finally LZip.Free; end; end; procedure TForm1.Button1Click(Sender: TObject); begin ZipAFile('c:\temp\test.zip', 'c:\temp\Freißeitföüährer.txt'); end; Modifiziere diesen Code-Schnipsel doch bitte einmal so, dass der Fehler auftritt (interessiert mich gerade, da wir bald etwas mit ZIP-Dateien vorhaben und eigentlich TZipFile nehmen wollten). Viel Erfolg! |
AW: TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
TZipFile hat, abgesehen von keiner guten Kompression, den Nachteil das es nicht mit Passwörter klar kommt.
Zumindest in Delphi Berlin gab es da noch keine Passwort Unterstützung. Vorteil wegen niedriger Komression ist allerdings die Geschwindigkeit. |
AW: TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
Zitat:
![]() |
AW: TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
Zitat:
![]() ![]() Und zur Kompression: Wenn etwas anderes als deflate verwendet wird, ist es kein normales ZIP File mehr, sondern ein durch WinZip populär gemachtes erweitertes Format, für das mittlerweile zipx als Dateierweiterung verwendet werden sollte. Aber wir schweifen ab... |
AW: TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
Zitat:
|
AW: TZipFile 'Unterstützung für Komprimierungsmethode nicht registriert'
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:37 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