Das nächste Entwicklertreffen findet Anfang Mai in Münster statt - weitere Infos bzw. zur Anmeldung!

XbZLib funktioniert nicht mehr [Problem erkannt]

Moderator: Moderatoren

Antworten
ramses
Programmier-Gott
Programmier-Gott
Beiträge: 1228
Registriert: Mi, 28. Jul 2010 17:16

XbZLib funktioniert nicht mehr [Problem erkannt]

Beitrag von ramses » Mo, 10. Dez 2018 16:08

Hallo

neuderdings funktioniert die UnCompress Funktion von der XbZlib nicht mehr.
Wenn ich z.B. versuche eine ZIP Datei auszupacken die eine einzige .txt Datei enthält erscheint im Log der Fehler:

Error Code: -5 -- Output Buffer too small (ZLib Error Code)!

Und eine Datei mit 0 Bytes ist erstellt.
Dateigrösse der ZIP Datei ist 70 kBytes die Originalgrösse der enthaltenen Datei 800 kBytes.
Mit Windows kann die Datei problemlos "entpackt" werden.

Kennt dieses Problem schon jemand?

Gruss Carlo
Zuletzt geändert von ramses am Di, 11. Dez 2018 11:01, insgesamt 1-mal geändert.

ramses
Programmier-Gott
Programmier-Gott
Beiträge: 1228
Registriert: Mi, 28. Jul 2010 17:16

Re: XbZLib funktioniert nicht mehr

Beitrag von ramses » Di, 11. Dez 2018 11:00

Hallo

vielleicht hilft es ja mal jemandem sich einige Stunden "Problemsuche" zu ersparen....

Ich konnte das Problem eingrenzen und auch lösen.

Der Fehler tritt auf:
- mit ZIP Dateien von externer Stelle (Rechencenter) erstellt
- XbZlib läuft mit der ZLib1.dll 1.2.11.0

Selbst mit Windows oder XbZlib gepackte Dateien zeigen keine Fehler.

Lösung:

Anstelle der aktuellen die ältere zlib1.dll 1.2.8.0 oder früher verwenden. Dann tritt das Problem nicht auf.


Gruss Carlo

Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 7516
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Kontaktdaten:

Re: XbZLib funktioniert nicht mehr [Problem erkannt]

Beitrag von Tom » Di, 11. Dez 2018 11:35

Wir hatten kürzlich ein Dekompressionsproblem in/mit unseren Mobilapps (Cordova/React, JS/HTML/CSS), und das Problem - ein Pufferüberlauf mit nachfolgend nur teilweise extrahierten Daten - lag daran, dass die Originaldatei extrem redundant war, dass also ein sehr großer Teilbereich sehr stark verdichtet wurde. Beim Entpacken lief da ein offensichtlich 8-bittiger Puffer(zeiger?) über. Als das Verfahren bzw. der Dekompressionsalgorithmus auf 16 Bit umgestellt wurde, war der Fehler weg. Er war aber vorher bei vielen tausend Dekompressionsvorgängen nie aufgetreten, weil diese besonders hohe Redundanz einfach vorher nie vorhanden war.
Herzlich,
Tom

Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 14693
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Kontaktdaten:

Re: XbZLib funktioniert nicht mehr [Problem erkannt]

Beitrag von brandelh » Di, 11. Dez 2018 12:21

ich hab hier die 1.2.5 ... zum Glück nie über Updates nachgedacht ;-)
Gruß
Hubert

Benutzeravatar
mini990
1000 working lines a day
1000 working lines a day
Beiträge: 520
Registriert: Sa, 28. Jan 2006 9:44
Wohnort: Berg-Richtheim bei Neumarkt i.d.Opf.

Re: XbZLib funktioniert nicht mehr [Problem erkannt]

Beitrag von mini990 » Di, 11. Dez 2018 12:45

Gab es bei diesen alten Versionen nicht ein Problem mit großen Dateien?
Ich glaube mich zu erinnern dass da was mit 2GB war...

Ich setze die Version 2.3 ein. Funktioniert bei mir ohne Probleme.

Gruß Stefan

ramses
Programmier-Gott
Programmier-Gott
Beiträge: 1228
Registriert: Mi, 28. Jul 2010 17:16

Re: XbZLib funktioniert nicht mehr [Problem erkannt]

Beitrag von ramses » Di, 11. Dez 2018 13:20

@Tom
Irgend so etwas wird es sein. In der ZLib 1.2.9.0 wurden die un- / compress Funktionen optimiert. Es wird aber empfohlen diese und die nächste wegen Fehlern nicht zu verwenden und gleich auf die 1.2.11.0 zu wechseln. Das merkwürdige ist dass die uncompress Funktion eigenlich die korrekt ausgepackte Datei zurückgibt in richtiger Länge aber zusätzlich auch noch eine Fehlermeldung .... Die betroffenen ZIP Dateien konnte ich selbst nicht so klein erstellen. Wenn ich die enthaltene Datei packe war das selbst erstellt ZIP File immer wesentlich grösser.

@Stefan
Die Version bezieht sich nicht auf XbZLib sondern auf die zLib1.dll die durch die XbZLib 2.3 und einige andere Tools / Funktionen verwendet wird.
Die aktuelle zLib1.dll ist 1.2.11.0. höhere/neuere gibt es nicht. siehe zlib.net
Es sind 2 verschiedene Programme/Versionen. Das 2GB Problem hat XbZLib (AGP) in der Version 2.0 behoben.

Gruss Carlo
Zuletzt geändert von ramses am Di, 11. Dez 2018 13:24, insgesamt 1-mal geändert.

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 11718
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: XbZLib funktioniert nicht mehr [Problem erkannt]

Beitrag von AUGE_OHR » Di, 11. Dez 2018 13:23

ramses hat geschrieben:
Mo, 10. Dez 2018 16:08
Mit Windows kann die Datei problemlos "entpackt" werden.
dann nimm doch die Windows API Function ;)

Code: Alles auswählen

FUNCTION Unzip(cZipFile, cDestFolder)
LOCAL oShell, oZIP, oNameDest
   oShell    := CreateObject("Shell.Application")
   oZIP  := oShell:NameSpace(cZipFile)
   oNameDest := oShell:NameSpace(cDestFolder)
   oNameDest:CopyHere(oZIP:items(), 0x10)
   // besser cDestFolder Anzahl Files gegen oZIP:items():Count() prüfen
   SLEEP(100)  
   oShell:destroy()
   oShell := NIL
RETURN NIL
p.s. auch in einer der Windows 10 Versionen gab es doch letztens ein ZIP Problem ...
gruss by OHR
Jimmy

Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 14693
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Kontaktdaten:

Re: XbZLib funktioniert nicht mehr [Problem erkannt]

Beitrag von brandelh » Di, 11. Dez 2018 13:28

hier sind die Infos zur zlib1.dll (Version 1.x):

http://www.winimage.com/zLibDll/
http://www.zlib.net/
Gruß
Hubert

ramses
Programmier-Gott
Programmier-Gott
Beiträge: 1228
Registriert: Mi, 28. Jul 2010 17:16

Re: XbZLib funktioniert nicht mehr [Problem erkannt]

Beitrag von ramses » Di, 11. Dez 2018 13:33

Hallo Jimmy
dann nimm doch die Windows API Function ;)
Davor fürchte ich mich!

Vor

Code: Alles auswählen

CreateObject("Shell.Application")
um es genau zu bezeichnen.

Gruss Carlo

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 11718
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: XbZLib funktioniert nicht mehr [Problem erkannt]

Beitrag von AUGE_OHR » Mi, 12. Dez 2018 4:52

hi,
ramses hat geschrieben:
Di, 11. Dez 2018 13:33
Davor fürchte ich mich!
Vor

Code: Alles auswählen

CreateObject("Shell.Application")
um es genau zu bezeichnen.
benutzt du unter Windows nicht den Explorer :?:

mit "Shell.Application" kommt man an all das was der Explorer kann inklusive ZIP.
gruss by OHR
Jimmy

ramses
Programmier-Gott
Programmier-Gott
Beiträge: 1228
Registriert: Mi, 28. Jul 2010 17:16

Re: XbZLib funktioniert nicht mehr [Problem erkannt]

Beitrag von ramses » Mi, 12. Dez 2018 6:08

Hi JImmy
benutzt du unter Windows nicht den Explorer
Sicher doch. Aber nicht nur ....

Zur Sache: die ZIP Unpack Funktion läuft in einem XBase-Programm das als Dienst gestartet die Server Aufgaben für eine Web-App bereitstellt. Es ist durchausmöglich dass auch mehrere zip und unzip-Aufrufe gleichzeitig erfolgen. Ich fürchte mich vor möglichen Problemen und Sorgen die kommen könnten wenn ich in diesem Umfeld das ganze geZIPe auf Shell.App Aufrufe umstelle. Das aktuelle Konstrukt ist nun lange im Einsatz und läuft ..... eine bestimmte hatte gestern 4891 Seitenaufrufe mit 2.170 GB Datentransfer (RX+TX)....

Gruss Carlo

Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 14693
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Kontaktdaten:

Re: XbZLib funktioniert nicht mehr [Problem erkannt]

Beitrag von brandelh » Mi, 12. Dez 2018 8:23

Läuft das shell.app... nicht über ActiveX ?

Lahm und fehleranfällig, hinzu kommt, dass man nie weiß ob M$ grad mal wieder was anders haben will ;-)
Gruß
Hubert

Antworten