www.digitalmars.com         C & C++   DMDScript  

D - Self-Extracting ZIP Archive manipulation.

reply Andrew Edwards <Andrew_member pathlink.com> writes:
I have a self-extracting zip file that contains four "self-extractables". Within
those four files are the files I need to run a particular program. My question
is: Using std.zip and/or std.zlib, is there a way to list/compare the directory
structure of a self-extracting zip file and subsequently extract only the
file(s) required?

e.g.
mail.exe contains: postoffice.exe, mailbox.exe, mailman.exe
postoffice.exe contains: some.cty, jacksonville.cty, city.exe

I only want to extract city.exe and the contents of mailbox.exe if the date of
those files are newer than the ones I already have. If I don't have the files in
the archive, then it should extract all (self-extracting archives will be
deleted, so it is beter extracting them in the first place). To add a finall
twist, I'd like to do this remotely. Is this possible?

Where might I find some examples of this?

TIA,
Andrew
Nov 12 2003
parent "Walter" <walter digitalmars.com> writes:
I didn't put self-extracting zip file support in std.zip. But you can
examine the freely available source to zip to see how it works. See
www.infoz-zip.org


"Andrew Edwards" <Andrew_member pathlink.com> wrote in message
news:botpjd$8a$1 digitaldaemon.com...
 I have a self-extracting zip file that contains four "self-extractables".
Within
 those four files are the files I need to run a particular program. My
question
 is: Using std.zip and/or std.zlib, is there a way to list/compare the
directory
 structure of a self-extracting zip file and subsequently extract only the
 file(s) required?

 e.g.
 mail.exe contains: postoffice.exe, mailbox.exe, mailman.exe
 postoffice.exe contains: some.cty, jacksonville.cty, city.exe

 I only want to extract city.exe and the contents of mailbox.exe if the
date of
 those files are newer than the ones I already have. If I don't have the
files in
 the archive, then it should extract all (self-extracting archives will be
 deleted, so it is beter extracting them in the first place). To add a
finall
 twist, I'd like to do this remotely. Is this possible?

 Where might I find some examples of this?

 TIA,
 Andrew
Nov 12 2003