PB Setup

Anfängerfragen zum Programmieren mit PureBasic.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

*achselzuck* bei der PBOSL gehe ich davon aus dass man es machen kann,
zumal meines Wissens die aktuelle Version sowieso nur noch als Source released wird.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Tsuki-Namida
Beiträge: 633
Registriert: 17.11.2005 13:27
Kontaktdaten:

Beitrag von Tsuki-Namida »

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
Bild
Benutzeravatar
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

Beitrag von ts-soft »

Andesdaf hat geschrieben:
Kiffi hat geschrieben:
Andesdaf 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
ups, stimmt :oops:
Nein, auch verkehrt :lol:
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.
Bild
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

ts-soft hat geschrieben:Nein, auch verkehrt :lol:
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.
ich will ja jetzt keine Haare spalten, aber wo ist denn jetzt der essentielle
Unterschied zwischen unseren beiden Ausführungen?

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
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

Beitrag von ts-soft »

> 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.
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.
Bild
Benutzeravatar
BI2
Beiträge: 146
Registriert: 26.11.2006 19:07

Beitrag von BI2 »

Hallo Kain,
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 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.

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
Magix-Soft <Kain> hat geschrieben:(mit winrar in zip gepackt und pure zip entpackt)
Vielleicht hängt es auch an der verwendeten Version des ZIP Algorithmus.
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
Benutzeravatar
X360 Andy
Beiträge: 1206
Registriert: 11.05.2008 00:22
Wohnort: Bodensee
Kontaktdaten:

Beitrag von X360 Andy »

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
Falls du Vista hast, vieleicht den Admin Requester Modi aktivieren ?

Da du ja bei Vista nicht ohne weiters Daten in Program Verzeichnis kopiern darfst (was du ja scheinbar machst ? )
Benutzeravatar
Tsuki-Namida
Beiträge: 633
Registriert: 17.11.2005 13:27
Kontaktdaten:

Beitrag von Tsuki-Namida »

@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...

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
@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...

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
Bild
Andesdaf
Moderator
Beiträge: 2673
Registriert: 15.06.2008 18:22
Wohnort: Dresden

Beitrag von Andesdaf »

ts-soft hat geschrieben:
Andesdaf hat geschrieben:
Kiffi 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
ups, stimmt :oops:
Nein, auch verkehrt :lol:
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.
Darf ich noch mal zitieren? :wink:

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
Benutzeravatar
Tsuki-Namida
Beiträge: 633
Registriert: 17.11.2005 13:27
Kontaktdaten:

Beitrag von Tsuki-Namida »

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

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 
aber mit der neuen geht es leider auch nicht....(enpackt nicht)
Bild
Antworten