Italia
Fonte/ Codesnippets

Funktionen Nutzen Ocx Zip

 

Uwe
''Pascal''
Niemeier
Hi Leute!

Hier zwei Minimal-Beispiele (ohne Fehlerabfrage), wie man mithilfe der ocx3a-Routinen
die Windows-internen Zip-Funktionen nutzen kann.

File oder Ordner packen:
KompilierenMarkierenSeparieren
window 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-File entpacken:
KompilierenMarkierenSeparieren
window 200,200
 $H Windows.ph
 $H ocx3a.ph
 $I ocx3a.inc
var Quelle$="C:Test.zip"--existierende zip-File
var Ziel$="C:1Test"-------existierender Zielordner
ocxInit()
var Shell&=ocxCreate("Shell.Application")
var Ziel&=ocxMethod(Shell&,"NameSpace",Ziel$)
var Quelle&=ocxMethod(Shell&,"NameSpace",Quelle$)
var Items&=ocxMethod(Quelle&,"Items")
ocxMethod(Ziel&,"CopyHere",Items&)
--Entpacken arbeitet synchron, darum keine Statusabfrage nötig (??)
print "Fertig"
ocxRelease(Items&,Ziel&,Quelle&,Shell&)
ocxDeInit()
waitkey

Die Codes verhalten sich genauso wie die Windows-Originale, d.h. bei grande
File erscheint eine Fortschrittsanzeige und beim Entpacken wird gegebenenfalls
gefragt, ob existierende File überschrieben werden sollen.

PS: Wenn die ocx-Routinen direkt nach Aufruf der Funktionen De-Initialisiert werden
(wie in diesen Demos), kann man sich den Aufruf von ocxRelease() sparen, weil
noch offene ocx-Objekte durch ocxDeInit() automatisch freigegeben werden.

SeeYou
Pascal
 
27.12.2009  
 




Dieter
Zornow
Super gemacht, hast du auch mal versucht eine Zipdatei mit Password zu entpacken, wird da automatisch nachgefragt oder supportati die Windowsroutine das nicht.
 
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
Hallo

Bei mir brich beim unpacken das programm ab

Gruss
Sato
 
Sato Pinto
WIN XP Home
XPROFAN 11
27.12.2009  
 




Uwe
''Pascal''
Niemeier
Hi Leute!

@ Dieter:
Beim Entpacken wird in der Tat bei Bedarf nach einem Password gefragt; beim Packen nicht,
weil Windows dies eben nicht selbst supportati.

@ Sato:
Keine Fehlermeldung?
Versuch mal per $D rauszukriegen, wos klemmt und laß dir die Inhalte der verwendeten
Variablen Mostra.

SeeYou
Pascal
 
28.12.2009  
 




Sato
Pinto
Hallo Pascal

Laut $D
die Zeile verursacht den Programabruch
ocxMethod(Ziel&,"CopyHere",Items&)

Gruss
Sato
 
Sato Pinto
WIN XP Home
XPROFAN 11
29.12.2009  
 




Uwe
''Pascal''
Niemeier
Hi Sato!

Wenn Ziel&  und Items&  nicht Null sind, sollte es klappen
Ansonsten könntest du vor und/oder nach "CopyHere" mal ein Sleep 200  oder so einsetzen.
Könnte ein Timing-Problem sein.

@ All: Hat sonst noch jemand Probleme mit diesen Funktionen?

SeeYou
Pascal
 
30.12.2009  
 



Ich freue mich erst drauf, richtig angucken kann ich erst bisl später.
 
30.12.2009  
 




Sato
Pinto
Hallo

Mit die Sleep Befehle funktioniert prima, Danke

Gruss
Sato
 
Sato Pinto
WIN XP Home
XPROFAN 11
30.12.2009  
 



Zum Quelltext


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

8.796 Views

Untitledvor 0 min.
Member 862464113.05.2024
Sven Bader11.07.2021
Andre Rohland27.01.2018
Gast-081515.05.2016
Di più...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie