Toon posts:

[VBA] Zippen

Pagina: 1
Acties:
  • 163 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Hoi!,

Het is toch zo dat XP standaard ZIP functionaliteit heeft? Ik vroeg mij even af of dit in VBA ook aan te spreken was. Ik krijg .zip bestanden binnen en moet het bestand verwerken wat daar in zit. Op internet staan genoeg 200 euro componenten om dit te kunnen doen maar ik vraag mij af of dat nodig is.

Als dan toch blijkt dat je met VBA niet gewoon een zip bestand kan uitlezen, dan vraag ik mij af of je wel winzip kan benaderen (dat staat hier overal geinstalleerd). Op google staat wel een voorbeeld hoe je dat kan doen door Winzip.exe met een shell opdracht uit te voeren zodat hij het spul extract, maar dat vind ik vrij lelijk.

Iemand een geniaal idee dat de noodzaak tot het aanschaffen van een dergelijk component onnodig maakt?

  • MerijnB
  • Registratie: Oktober 2000
  • Laatst online: 20-08 20:15
ik weet niet hoe en wat je allemaal kan programmeren, maar er is iig voor c++ en delphi freeware zip code beschikbaar. Daar zou je een com object van kunnen maken.

succes

A software developer is someone who looks both left and right when crossing a one-way street.

Dé antenne-innovatie voor de korte golf


Verwijderd

Als het alleen op WinME/XP machnes gaat draaien waarbij de ZIP-shell extension is geinstalleerd dan zou je kunnen overwegen om de shell extension rechtstreeks (is COM-object) aan te spreken. Gaat niet werken natuurlijk als je bijv. Win98/2000 gebruikt.

Verwijderd

Topicstarter
Verwijderd schreef op 07 november 2003 @ 14:38:
Als het alleen op WinME/XP machnes gaat draaien waarbij de ZIP-shell extension is geinstalleerd dan zou je kunnen overwegen om de shell extension rechtstreeks (is COM-object) aan te spreken. Gaat niet werken natuurlijk als je bijv. Win98/2000 gebruikt.
Dat klinkt erg interessant! Hebben we het hier over de Microsoft Shell Controls and Automation? (shell32.dll)? Ik was al hard op zoek naar een manier om die standaard XP functionaliteit aan te spreken. Bedankt voor de tip, ik ga meteen uitvinden hoe het werkt.

Verwijderd

Topicstarter
Verwijderd schreef op 10 november 2003 @ 11:21:
[...]


Dat klinkt erg interessant! Hebben we het hier over de Microsoft Shell Controls and Automation? (shell32.dll)? Ik was al hard op zoek naar een manier om die standaard XP functionaliteit aan te spreken. Bedankt voor de tip, ik ga meteen uitvinden hoe het werkt.
Nee... we hebben het hele internet afgezocht. Er bestaan 2 internet topics die hier over gaan. De ene verwijst naar een DLL die we nergens kunnen vinden en de andere meld dat het onmogelijk is. We gebruiken nu gewoon winzip met wat parametertjes.

  • Woudloper
  • Registratie: November 2001
  • Niet online

Woudloper

« - _ - »

Hoewel je dit artikel in Google Groups (Usenet) dan ook wel gevonden zou hebben, wil ik het toch even melden. In dit draadje op usenet staat beschreven hoe je gebruik kan maken van de standaard XP zip functionaliteit.

Bij nader inzien is dat denk ik toch niet wat je zoekt. Maar waarom zou je niet gebruik maken van ShellEx en de Winzip Commanline functies. Die werken toch gewoon. Anders moet je gaan zoeken of er een soortement van API is voor winzip o.i.d. Maar ik zie niet in waarom je niet gebruik kan maken van de commandline functionaliteiten als die toch tot het gewenste doel leiden...

Verwijderd

Topicstarter
Woudloper schreef op 18 november 2003 @ 09:13:
Hoewel je dit artikel in Google Groups (Usenet) dan ook wel gevonden zou hebben, wil ik het toch even melden. In dit draadje op usenet staat beschreven hoe je gebruik kan maken van de standaard XP zip functionaliteit.

Bij nader inzien is dat denk ik toch niet wat je zoekt. Maar waarom zou je niet gebruik maken van ShellEx en de Winzip Commanline functies. Die werken toch gewoon. Anders moet je gaan zoeken of er een soortement van API is voor winzip o.i.d. Maar ik zie niet in waarom je niet gebruik kan maken van de commandline functionaliteiten als die toch tot het gewenste doel leiden...
Dat draadje heb ik inderdaad ook gevonden. Ik heb het alleen niet aan de praat kunnen krijgen. Ze programmeren tegen componenten die ik hier niet op mijn OS heb staan. Laat staan dat de klant dit dan heeft.

De commandline van Winzip gebruiken we nu inderdaad, winzip heeft helaas geen API beschikbaar. Het nadeel is dat je op de commandline van winzip niet door de collectie met gezipte bestanden kan lopen. Het is dus een "verassing" hoe de bestanden die je unzipped gaan heten. In code met een for-eachje er doorheen lopen was mooier en netter geweest. Dit gaat helaas niet door. We unzippen nu alles naar een tijdelijke map en lopen dan door de files heen. Niet zo mooi, maar het werkt.

Bedankt voor alle hulp!

Verwijderd

Howdiho.. ff een topicje ophalen. Ik was bezig met een stukkie vba code, hierbij kopieer ik een aantal jpg's en een .csv bestandje naar een map. Deze map wil ik vervolgens gaan comprimeren en op het bureaublad plaatsen.

Nu las ik hier iets over het aanspreken van de comand lijn in winzip. Hoe doet ik dit binnen m'n vba??

  • KingRichard
  • Registratie: September 2002
  • Laatst online: 17-08 19:31

KingRichard

former Duke of Gloucester

Verwijderd schreef op 20 november 2003 @ 10:07:
Nu las ik hier iets over het aanspreken van de comand lijn in winzip. Hoe doet ik dit binnen m'n vba??
:D Bijna goed! Je kunt in VBA WinZip aanspreken via de command line. Voor meer informatie, zie de online-help in VBA over Shell en What command line parameters does WinZip support? op de site van WinZip.

a horse! a horse! my kingdom for a horse! (exeunt)
[got.profile] | [t.net.profile] | [specs]

Pagina: 1