| |
|
|
Uwe ''Pascal'' Niemeier | Hi gens!
ici deux Minimal-Beispiele (sans Fehlerabfrage), comment on mithilfe qui ocx3a-Routinen qui Windows-internen Zip-Funktionen nutzen peux.
Dossier ou bien Dossier saisir: KompilierenMarqueSéparationwindow 200,200
$H Windows.ph
$H ocx3a.ph
$I ocx3a.inc
var Quelle$="C:2Test"---existierende Datei oder Ordner
var Ziel$="C:Test.zip"--anzulegende Datei
declare a#:dim a#,24:clear a#
byte a#,0=80,75,5,6
blockwrite Ziel$,a#,0,24--leere Zip-Datei erzeugen
dispose a#
ocxInit()
var Shell&=ocxCreate("Shell.Application")
var Ziel&=ocxMethod(Shell&,"NameSpace",Ziel$)--ZIP wird von Windows wie Ordner behandelt
ocxMethod(Ziel&,"CopyHere",Quelle$)------------Quelle nach Pseudo-"Ordner" kopieren
set("ErrorLevel",0)---Komprimieren arbeitet asynchron, darum Statusabfrage nötig
while 1
sleep 50
case filesize(Ziel$)>-1:break--Datei "fertig", sonst Größe = -1
print Time$(1)
endwhile
set("ErrorLevel",1)
ocxRelease(Ziel&,Shell&)
print "Fertig"
ocxDeInit()
waitkey
ZIP-Dossier entpacken: KompilierenMarqueSéparationwindow 200,200
$H Windows.ph
$H ocx3a.ph
$I ocx3a.inc
var source$="C:Test.zip"--existierende zip-Dossier
var but$="C:1Test"-------existierender Zielordner
ocxInit()
var Shell&=ocxCreate("Shell.Application")
var Ziel&=ocxMethod(Shell&,"NameSpace",but$)
var Quelle&=ocxMethod(Shell&,"NameSpace",source$)
var Items&=ocxMethod(Quelle&,"Items")
ocxMethod(Ziel&,"CopyHere",Items&)
--Entpacken arbeitet synchron, tout autor aucun Statusabfrage nötig (??)
imprimer "Fertig"
ocxRelease(Items&,Ziel&,Quelle&,Shell&)
ocxDeInit()
waitkey
qui Codes verhalten sich genauso comment qui Windows-Originale, d.h. chez grand Fichiers erscheint une Fortschrittsanzeige et beim Entpacken wird peut-être gefragt, si existierende Fichiers überschrieben volonté devoir.
PS: si qui ocx-Routinen direct pour Aufruf qui Funktionen De-Initialisiert volonté (comment dans cette Demos), peux on sich den Aufruf de ocxRelease() sparen, weil encore offene ocx-Objekte par ocxDeInit() automatisch freigegeben volonté.
SeeYou Pascal |
|
|
| |
|
|
|
Dieter Zornow | Super gemacht, la hâte du aussi la fois versucht une Zipdatei avec Mot de passe trop entpacken, wird là automatisch nachgefragt ou bien soutenu qui Windowsroutine cela pas. |
|
|
| Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2 | 27.12.2009 ▲ |
|
|
|
|
Sato Pinto | allô
chez mir brich beim unpacken cela programm ab
Gruss Sato |
|
|
| |
|
|
|
Uwe ''Pascal'' Niemeier | Hi gens!
@ Dieter: Beim Entpacken wird dans qui acte chez besoin pour einem Mot de passe gefragt; beim saisir pas, weil Windows ca plan pas selbst soutenu.
@ Sato: aucun Fehlermeldung? Versuch la fois per $D rauszukriegen, wos klemmt et laß dir qui Inhalte qui verwendeten Variablen Montrer.
SeeYou Pascal |
|
|
| |
|
|
|
Sato Pinto | allô Pascal
le son $D qui la ligne verursacht den Programabruch ocxMethod(Ziel&,"CopyHere",Items&)
Gruss Sato |
|
|
| |
|
|
|
Uwe ''Pascal'' Niemeier | Hi Sato!
si Ziel& et Items& pas zéro sommes, sollte es marcher Ansonsten könntest du avant et/ou bien pour "CopyHere" la fois un Sleep 200 ou bien so einsetzen. Könnte un Timing-Problem son.
@ All: Hat sonst encore quelqu'un Probleme avec cette Funktionen?
SeeYou Pascal |
|
|
| |
|
|
|
| je suis mich seulement sur elle, richtig angucken peux je seulement bisl später. |
|
|
| |
|
|
|
Sato Pinto | allô
avec qui Sleep Befehle funktioniert prima, merci
Gruss Sato |
|
|
| |
|
|