Pure_ZIP mit Pack Status

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Pure_ZIP mit Pack Status

Beitrag von Joel »

Hallo,

gibt es eine Möglichkeit herauszufinden, wie viel Byte der Packer bei der Packer Lib: Pure_ZIP schon gepackt hat?

Code: Alles auswählen

PureZIP_AddFile(MyZIP, MyFilesToZIP, #PureZIP_StorePathAbsolute)
----------------------------------------------------------

PB 5.20 Beta 10 | Windows 7
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

ich kenn das ding nicht wirklich und benutz es auch nicht, aber ich les ab und zu was drüber im forum,
und ich entsinne mich, dass es da für den "progress" einen "callback" gibt.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag von Joel »

Sowas gibts....

Code: Alles auswählen

PureZIP_SetProgressionCallback(@PureZIP_CallbackP())
habe einiges versucht, verstehe aber nicht, wie ich den Callback anwende, ich bekomme immer 0 zurück.
----------------------------------------------------------

PB 5.20 Beta 10 | Windows 7
Benutzeravatar
mk-soft
Beiträge: 3855
Registriert: 24.11.2004 13:12
Wohnort: Germany

Beitrag von mk-soft »

Inder Hilfe von PureZIP

"PureZIP_SetCompressionCallback(*ProcedureAddress)"

FF :wink:
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
mk-soft
Beiträge: 3855
Registriert: 24.11.2004 13:12
Wohnort: Germany

Beitrag von mk-soft »

Es wird die Procedure automatisch aufgerufen. In dieser Procedure die Ausgabe programmieren. Mit PureZIP_SetCompressionCallback(*ProcedureAddress) wird die Adresse auf die Procedure gesetz.
Sie Beispiel in der Hilfe
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
rolaf
Beiträge: 3843
Registriert: 10.03.2005 14:01

Beitrag von rolaf »

>>> Inder Hilfe von PureZIP

Ne Inder Hilfe? Auf indisch?

Scherz beiseite, da ist sogar ein fettes Example dabei. Sollte also kein Problem sein.
:::: WIN 10 :: PB 5.73 :: (x64) ::::
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag von Joel »

Habe mir das eben ales angesehen, aber bekomme immer 0 zurück, deswegen habe ich nach gefragt...Bei Beispiel siehe hier:




Code: Alles auswählen


  Procedure PureZIP_CallbackP(File.s, PerCent.f)
  Repeat 
  Delay(1000)
	Debug FileName ;: current processed file (If applicable)
	Debug  Progression ;: progression percentage)
	Until r = 4
EndProcedure

Code: Alles auswählen

Debug PureZIP_SetProgressionCallback(@PureZIP_CallbackP())
MyZIP.s = Tempdir$+"Filetrans.zip"  
MyFilesToZIP.s = Upload_Datei_Pfad$ 
Debug PureZIP_AddFile(MyZIP, MyFilesToZIP, #PureZIP_StorePathAbsolute)
AddFile = 1
Callback = 0
procedure wird garnicht aufgufen
----------------------------------------------------------

PB 5.20 Beta 10 | Windows 7
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 »

Ich kenne zwar die Lib nicht, aber wenn dann sieht das Callback so aus:

Code: Alles auswählen

Procedure PureZIP_CallbackP(File.s, PerCent.f)
   Debug File ;: current processed file (If applicable)
   Debug PerCent ;: progression percentage)
EndProcedure
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
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag von Joel »

Hier ein kürzeres Beispiel:

Code: Alles auswählen

Procedure PureZIP_CallbackP(File.s, PerCent.f) 
   Debug File ;: current processed file (If applicable) 
   Debug PerCent ;: progression percentage) 
EndProcedure

Debug PureZIP_SetProgressionCallback(@PureZIP_CallbackP())
MyZIP.s = "C:\Users\TE.zip"  
MyFilesToZIP.s = "F:\r.3gp"
Debug PureZIP_AddFile(MyZIP, MyFilesToZIP, 0)
Also die Procedure wird scheinbar garnicht ausgeführt und der Callback gibt 0 zurück-
----------------------------------------------------------

PB 5.20 Beta 10 | Windows 7
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 »

Hab mir jetzt die Hilfe besorgt.
> Debug PureZIP_SetProgressionCallback(@PureZIP_CallbackP())
Da steht nicht, das diese Funktion irgendeinen Wert zurückgibt!
Lediglich das das Callback zum Abbrechen 1 zurückgeben sollte, ansonsten 0
Du gibts nichts zurück, ist also okay.
Müßte funktionieren.

Ansonsten vielleicht mal mit minizip probieren, da kann ich besser helfen

// edit
Ich sehe gerade, für c:\users sind Adminrechte erforderlich!
Aber in Deiner Signatur steht was von XP - Home?
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
Antworten