Seite 1 von 2
Pure_ZIP mit Pack Status
Verfasst: 21.03.2009 14:45
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)
Verfasst: 21.03.2009 14:51
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.
Verfasst: 21.03.2009 15:01
von Joel
Sowas gibts....
habe einiges versucht, verstehe aber nicht, wie ich den Callback anwende, ich bekomme immer 0 zurück.
Verfasst: 21.03.2009 15:03
von mk-soft
Inder Hilfe von PureZIP
"PureZIP_SetCompressionCallback(*ProcedureAddress)"
FF

Verfasst: 21.03.2009 15:06
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
Verfasst: 21.03.2009 15:13
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.
Verfasst: 21.03.2009 15:23
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
Verfasst: 21.03.2009 15:27
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
Verfasst: 21.03.2009 15:40
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-
Verfasst: 21.03.2009 15:54
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?