PB Setup
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
- Tsuki-Namida
- Beiträge: 633
- Registriert: 17.11.2005 13:27
- Kontaktdaten:
BI2 hat geschrieben:Hallo Kain,
die aktuellste PureZip bekommst Du auf Gnozals Homepage:
http://freenet-homepage.de/gnozal/#UserLibs
Gruß, BI2
Super danke die zip lib war schuld....
ich habe die auf der seite runtergeladen und sie ging die fehlermeldung kommt nicht mehr

nur macht die lieb probleme -.-
und zwar entpackt die nicht wie erwartet...
ich hatte eine test zip gemacht um zu sehn wie die lib funktioniert ich hatte 3 dateien gepackt und diese wurden auch erfolgreich entpackt. (mit winrar in zip gepackt und pure zip entpackt)
jetzt habe ich den quellcode für die neue lib angepasst aber die lieb entpackt nicht.... und die datei ist defenitiv forhanden und dennoch bekomme ich als erbebniss "0" zurück und nicht die anzahl an dateien die enpackt werden sollten und das ziehl verzeichnis ist leer...
Code: Alles auswählen
Debug GetExePath()+"Skins"+File$ ;Debuger ausgabe stimmt
a = PureZIP_ExtractFiles(GetExePath()+"Skins"+File$, "*.*", GetExePath()+"Temp", #True)
Debug a ;Egebnis ist 0

- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Nein, auch verkehrtAndesdaf hat geschrieben:ups, stimmtKiffi hat geschrieben:nope - annersrum. Eine (uns unbekannte alte Lib) will Funktionalitäten ausAndesdaf hat geschrieben:
der StringExtension-Lib verwenden, die in PB 4.3 nicht mehr vorhanden ist.
Grüße ... Kiffi

Eine uns unbekannte alte Lib will Funktionalität aus der StringExtension Lib
verwenden, die aber in der String lib ist, weil die StringExtension entfernt
wurde.
UserLib neukompilieren reicht, ohne Source kanns nur der Autor machen.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

ich will ja jetzt keine Haare spalten, aber wo ist denn jetzt der essentiellets-soft hat geschrieben:Nein, auch verkehrt![]()
Eine uns unbekannte alte Lib will Funktionalität aus der StringExtension Lib
verwenden, die aber in der String lib ist, weil die StringExtension entfernt
wurde.
Unterschied zwischen unseren beiden Ausführungen?
Grüße ... Kiffi
a²+b²=mc²
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
> wo ist denn jetzt der essentielle Unterschied zwischen unseren beiden Ausführungen?
Die UserLib glaub eine StringExtension Lib zu benötigen, weil bei Ihr im
Header so steht, weil dem ja auch mal so wahr. Sie vermißt aber keine
Funktion! Die Funktion findet die UserLib sowieso, egal in welche Lib die
verschoben wurde, solange sie nicht umbenannt oder parameteranzahl
verändert wurde.
Evtl. würde sogar eine leere StringExtension UserLib genügen, habs nicht
getestet.
Die UserLib glaub eine StringExtension Lib zu benötigen, weil bei Ihr im
Header so steht, weil dem ja auch mal so wahr. Sie vermißt aber keine
Funktion! Die Funktion findet die UserLib sowieso, egal in welche Lib die
verschoben wurde, solange sie nicht umbenannt oder parameteranzahl
verändert wurde.
Evtl. würde sogar eine leere StringExtension UserLib genügen, habs nicht
getestet.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Hallo Kain,
Ich habe die PureZip mal runtergeladen und entpackt. Nach einem Blick in die Hilfe und dem Vergleich mit Deinem Codeschnipsel müßte eigentlich alles stimmen. Die einzige für mich verbleibende Erklärung wäre ein Fehler in Deiner GetExePath() Funktion. Vielleicht fehlt hier im Rückgabewert der Backslash "" - dann stimmt der Pfad nicht. Sollte es das nicht sein, kann ich Dir so leider nicht weiterhelfen.
Gruß, BI2
Edit: mir fällt gerade noch auf
ZLIB unterstützt ZIP Version 2.0 (oder so). Vielleicht ist Deine Datei mit einem neueren ZIP Algorithmus komprimiert und kann deshalb nicht entpackt werden.
Gruß, BI2
Ich benutze bei mir keine Userlibs (und weigere mich diese in mein PB zu integrieren), deshalb kann ich Dir keinen direkten Hinweis auf den Fehler geben.Magix-Soft <Kain> hat geschrieben:jetzt habe ich den quellcode für die neue lib angepasst aber die lieb entpackt nicht.... und die datei ist defenitiv forhanden und dennoch bekomme ich als erbebniss "0" zurück und nicht die anzahl an dateien die enpackt werden sollten und das ziehl verzeichnis ist leer...
Code: Alles auswählen
Debug GetExePath()+"Skins"+File$ ;Debuger ausgabe stimmt a = PureZIP_ExtractFiles(GetExePath()+"Skins"+File$, "*.*", GetExePath()+"Temp", #True) Debug a ;Egebnis ist 0
Ich habe die PureZip mal runtergeladen und entpackt. Nach einem Blick in die Hilfe und dem Vergleich mit Deinem Codeschnipsel müßte eigentlich alles stimmen. Die einzige für mich verbleibende Erklärung wäre ein Fehler in Deiner GetExePath() Funktion. Vielleicht fehlt hier im Rückgabewert der Backslash "" - dann stimmt der Pfad nicht. Sollte es das nicht sein, kann ich Dir so leider nicht weiterhelfen.
Gruß, BI2
Edit: mir fällt gerade noch auf
Vielleicht hängt es auch an der verwendeten Version des ZIP Algorithmus.Magix-Soft <Kain> hat geschrieben:(mit winrar in zip gepackt und pure zip entpackt)
ZLIB unterstützt ZIP Version 2.0 (oder so). Vielleicht ist Deine Datei mit einem neueren ZIP Algorithmus komprimiert und kann deshalb nicht entpackt werden.
Gruß, BI2
Falls du Vista hast, vieleicht den Admin Requester Modi aktivieren ?Magix-Soft <Kain> hat geschrieben: jetzt habe ich den quellcode für die neue lib angepasst aber die lieb entpackt nicht.... und die datei ist defenitiv forhanden und dennoch bekomme ich als erbebniss "0" zurück und nicht die anzahl an dateien die enpackt werden sollten und das ziehl verzeichnis ist leer...
Code: Alles auswählen
Debug GetExePath()+"Skins"+File$ ;Debuger ausgabe stimmt a = PureZIP_ExtractFiles(GetExePath()+"Skins"+File$, "*.*", GetExePath()+"Temp", #True) Debug a ;Egebnis ist 0
Da du ja bei Vista nicht ohne weiters Daten in Program Verzeichnis kopiern darfst (was du ja scheinbar machst ? )
- Tsuki-Namida
- Beiträge: 633
- Registriert: 17.11.2005 13:27
- Kontaktdaten:
@BI2
ich habe die datei mit winrar gezipt und mit windows.... bedes geht nicht....
aber bevor ich die lib in meinem code eingebaut habe habe ich sie getestet und das mit erfolg und da habe ich mit der selbe rar version gezipt gehabt -.-
und der gesammte test code sah so aus
PureZIP_ExtractFiles("C:\Test\test.zip", "*.*", "C:\Test\", #True)
und in der GetExePath() Procedure ist auch kein fehler...
so steht die procedure momentahn im code...
@X360 Andy
ja okay das hätte sein können aber dem ist nicht so da ich xp nutze (vista hat mir zu viele nachteile)
@all
hier noch mal die ganze abfrage der zip datei...
ich habe die datei mit winrar gezipt und mit windows.... bedes geht nicht....
aber bevor ich die lib in meinem code eingebaut habe habe ich sie getestet und das mit erfolg und da habe ich mit der selbe rar version gezipt gehabt -.-
und der gesammte test code sah so aus
PureZIP_ExtractFiles("C:\Test\test.zip", "*.*", "C:\Test\", #True)
und in der GetExePath() Procedure ist auch kein fehler...
so steht die procedure momentahn im code...
Code: Alles auswählen
Procedure.s GetExePath()
; Prg.s = Space(#MAX_PATH)
; GetModuleFileName_(GetModuleHandle_(0), @Prg, #MAX_PATH)
; Prg = GetPathPart(Prg)
; If (FindString(prg,"\PureBasic\Compilers\", 1))
; Prg.s = Space(#MAX_PATH)
; GetCurrentDirectory_(#MAX_PATH,@Prg)
; EndIf
;If Right(Prg, 1) <> "\" : Prg + "\" : EndIf
; ProcedureReturn Prg
ProcedureReturn "G:\Pure Basic Quelltexte 4\Midi Center Page\V3\"
EndProcedure
ja okay das hätte sein können aber dem ist nicht so da ich xp nutze (vista hat mir zu viele nachteile)
@all
hier noch mal die ganze abfrage der zip datei...
Code: Alles auswählen
Procedure OpenSkin(File$) ;Datei wird ohne Ändung (typ) angegeben
Debug "*.skin Datei = "+Str(FileSize(GetExePath()+"Skins\"+File$+".skin"))
Debug "*.zip Datei = "+Str(FileSize(GetExePath()+"Skins\"+File$+".zip"))
If FileSize(GetExePath()+"Skins\"+File$+".skin") > 0
File$ = File$ +".skin"
ElseIf FileSize(GetExePath()+"Skins\"+File$+".zip") > 0
File$ = File$ +".zip"
Else
Debug "fehler"
ProcedureReturn -1
EndIf
If File$
; PureZIP_Archive_Read(GetExePath()+"Skins\"+File$)
; ReturnValue.l = PureZIP_Archive_FindFirst() = #UNZ_OK
; CreateDirectory("Temp")
; While ReturnValue = #UNZ_OK
; PureZIP_Archive_Extract("Temp\", #True)
; ReturnValue = PureZIP_Archive_FindNext()
; Wend
Debug GetExePath()+"Skins\"+File$
a = PureZIP_ExtractFiles(GetExePath()+"Skins\"+File$, "*.*", GetExePath()+"Temp\", #True)
Debug a
ProcedureReturn 1
Else
ProcedureReturn -1
EndIf
EndProcedure

Darf ich noch mal zitieren?ts-soft hat geschrieben:Nein, auch verkehrtAndesdaf hat geschrieben:ups, stimmtKiffi hat geschrieben: nope - annersrum. Eine (uns unbekannte alte Lib) will Funktionalitäten aus
der StringExtension-Lib verwenden, die in PB 4.3 nicht mehr vorhanden ist.
Grüße ... Kiffi![]()
Eine uns unbekannte alte Lib will Funktionalität aus der StringExtension Lib
verwenden, die aber in der String lib ist, weil die StringExtension entfernt
wurde.
UserLib neukompilieren reicht, ohne Source kanns nur der Autor machen.

Ok, das reicht jetzt mit der Diskussion über meine Verwechselung oder
was auch immer das ist.
php-freak hat ja wieder ziemlich wenige Fakten geschrieben:
welche lib ist es den?
Woher soll ich wissen, was er meint?

Win11 x64 | PB 6.20
- Tsuki-Namida
- Beiträge: 633
- Registriert: 17.11.2005 13:27
- Kontaktdaten:
die Lib die diesen fehler verursacht hat ist eine purezip lib gewesen.... in meinem code schnipsel den ich oben gepostet habe ist es der auskommentierte teil
aber mit der neuen geht es leider auch nicht....(enpackt nicht)
Code: Alles auswählen
; PureZIP_Archive_Read(GetExePath()+"Skins\"+File$)
; ReturnValue.l = PureZIP_Archive_FindFirst() = #UNZ_OK
; CreateDirectory("Temp")
; While ReturnValue = #UNZ_OK
; PureZIP_Archive_Extract("Temp\", #True)
; ReturnValue = PureZIP_Archive_FindNext()
; Wend
