Seite 1 von 1

Problem mit XbZLib [ERLEDIGT]

Verfasst: Mo, 30. Aug 2010 0:13
von UliTs
Hallo,

ich habe heute versucht XbZLib in mein Programm zu integrieren und ein ZIP-Archiv zu erstellen:

Code: Alles auswählen

oZip := XbZLibZip():New( cDateiname,XBZ_OPEN_CREATE,XBZ_BEST_COMPRESSION )
IF oZip:Open( cDateiname )
   oZip:AddDir( "*.DBF" )
   oZip:close()
   IF oZip:test() == XBZ_FILE_OK
      oZip:close()
   ENDIF
ENDIF
Leider kommt die folgende Fehlermeldung:
  • ------------------------------------------------------------------------------
    Xbase++ Version : Xbase++ (R) Version 1.90.331
    Betriebssystem : Windows XP 05.01 Build 02600 Service Pack 3
    ------------------------------------------------------------------------------
    oError:args :
    -> VALTYPE: O CLASS: ZipCentralDirectoryRecord
    oError:canDefault : N
    oError:canRetry : N
    oError:canSubstitute: N
    oError:cargo : NIL
    oError:description : Member-Variable ist für dieses Objekt unbekannt
    oError:filename :
    oError:genCode : 26
    oError:operation : Signature
    oError:osCode : 0
    oError:severity : 2
    oError:subCode : 2240
    oError:subSystem : BASE
    oError:thread : 1
    oError:tries : 0
    ------------------------------------------------------------------------------
    CALLSTACK:
    ------------------------------------------------------------------------------
    Aufgerufen von XBZLIBZIP:ADDDATA(578)
    Aufgerufen von XBZLIBZIP:ADDFILE(546)
    Aufgerufen von XBZLIBZIP:ADDDIR(486)
    Aufgerufen von B_71(51)
    Aufgerufen von (B)BBESTMENU(0)
    Aufgerufen von XBASEFUNCTIONEVENTLOOP(279)
    Aufgerufen von MAIN(74)
Daraufhin habe ich mal das Testprogramm TestZLib.exe ausprobiert. Auch dabei kommt obige Fehlermeldung.

Hat jemand eine Idee?

Uli

Re: Problem mit XbZLib

Verfasst: Mo, 30. Aug 2010 2:24
von AUGE_OHR
UliTs hat geschrieben:

Code: Alles auswählen

   oZip:AddDir( "*.DBF" )
Leider kommt die folgende Fehlermeldung:
...
Daraufhin habe ich mal das Testprogramm TestZLib.exe ausprobiert. Auch dabei kommt obige Fehlermeldung.

Hat jemand eine Idee?
bist du dir "sicher" das der Parameter "so" richtig ist ?
ich "denke" da muss der "volle" Path dabei sein ...
geht "Wildcat" wie "*.*" ... oder muss man nicht jede Datei "einzeln" hinzufügen ?

Re: Problem mit XbZLib

Verfasst: Mo, 30. Aug 2010 9:54
von Herbert
Ich schicke dem AddDir noch Argumente mit (obwohl optional)

Code: Alles auswählen

    oZip:AddDir('A*.DB?',cpath,'A',.F.)
Andere Bemerkung: Hast du zu Beginn des Codes

Code: Alles auswählen

#pragma library( "XbZLib.lib" )
Jimmy, es gibt den AddFile-Befehl wie auch den AddDir-Befehl, womit du sogar Dateien aus Unterverzeichnissen herholen kannst.

Re: Problem mit XbZLib

Verfasst: Mo, 30. Aug 2010 12:18
von UliTs
Hallo Jimmy & Herbert,

danke für die Hilfe! Leider bin ich mit Euren Tips nicht weitergekommen. Die Fehlermeldung kommt trotzdem.
Ich vermute, daß die beiden DLL's, die ich habe, nicht zueinander passen.
XbZLib.dll habe ich dank des Quellcode's für 1.90.355 neu übersetzen können. Dann wird noch ZLib.dll benötigt, richtig?
Die ZLib.dll-Version, die ich habe, stammt vom 13.12.2003 (Dateigröße 70.656).

Mehr wird doch nicht zur Laufzeit benötigt, oder?
Nach meinen Unterlagen ist XbZLib Freeware. Könnt Ihr prüfen, ob Ihr andere Versionen habt? Vielleicht könnt ihr mir diese zumailen.

Uli

Re: Problem mit XbZLib

Verfasst: Mo, 30. Aug 2010 13:07
von Herbert
Nein, nur die ZbZLib.dll. Aber wie oben gesagt: ich binde noch die XbZLib.lib ein. Hast du die?

Re: Problem mit XbZLib

Verfasst: Mo, 30. Aug 2010 17:15
von UliTs
Herbert hat geschrieben:Nein, nur die ZbZLib.dll. Aber wie oben gesagt: ich binde noch die XbZLib.lib ein. Hast du die?
Ja, die XbZLib.lib sowie den zugehörigen Quellcode habe ich. Aber bei mir benötigt sie definitiv noch eine ZLib.dll zur Laufzeit und ich vermute, die beiden DLL's passen nicht zusammen. Welche Version von Xbase++ setzt Du ein?

Uli

Re: Problem mit XbZLib [ERLEDIGT]

Verfasst: Mo, 30. Aug 2010 17:33
von UliTs
Vielen Dank an alle!
Ich hatte wohl eine fehlerhafte Version.
Jannik hat mir seine Freeware-Version zugeschickt und damit habe ich es hinbekommen. :)

Uli