zip and unzip in setup project

Because there are huge number of data files in my project, I try to zip them together to a compressed file and then uncompress them back in the installation process.
I used pkzip to compress all the files to a zip file and then convert it to a self-extract exe file, finally I add the exe file to the customer action of my setup project, I have two problems right now:
1. when the installation process reach the customer action, it gives me an error like "file already exist, do you want overwrite (y/n)? After I choose either Y or N, the installation process fails, I checked the destination folder, there is no file there.
2. I manually run the self-extract exe file and found that some long file names are changed by pkzip, maybe it is limited to 8 characters.
Anyone has some experience about it?
Appreciate your time and help.
[852 byte] By [snowbear] at [2008-2-25]
# 1
The default compression settings for a setup project are already to compress the files within the setup project into CAB files. Is there a reason you don't want to use this approach?
DavidGuyerMS at 2007-9-9 > top of Msdn Tech,Visual Basic,Visual Basic IDE...
# 2
because there are too many data files in the project (maybe more than 5,000), it takes for a long time to load and build the setup project, so I try to condense the application folder, after replacing the data files by several zip files, It do load and build much much faster, but when I run the msi file, when it reaches the customer action point, an error popup says "There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor." and everything rolled back.
I guess something wrong with my customer action. Here it is. Under the Install node of customer actions I added wzunzip.exe and at the arguments I specified "-d -n map.zip map\", I tried it in command window, it works. Any idea what's going wrong?
Thank you so much.

snowbear at 2007-9-9 > top of Msdn Tech,Visual Basic,Visual Basic IDE...
# 3
If I remember correctly, install files may not yet be on disk when you run the Install custom action. Also, if the wzunzip.exe is marked as excluded, it won't even be on the disk. In addition, you probably are missing some path information... the custom action could be running wzunzip from a temp dir, so you might need to use something like [TARGETDIR] in your arguments to wzunzip, something like:
-d -n [TARGETDIR]\map.zip map\ (you may not need the \ after DIR], I've forgotten and don't have help readily avail)

HTH

DavidGuyerMS at 2007-9-9 > top of Msdn Tech,Visual Basic,Visual Basic IDE...
# 4
Thanks David. I guess the customer action begins after the files transfer so the install files should be already on the disk.
You are right, I do miss the path information. I have assumed that if I put wzunzip and the zip file (map.zip) under the same folder, it will find it automatically and also unzip the file under this folder, but it seems that this does not work. After I add the path [TARGETDIR], it works now.
A benifit I got from the zip and unzip process is that, before using it, I can not package several mdb files into the setup package, but after I compressed the huge number of files into several zip files, now I can add the mdb files and package them together, if I use the "As loose uncompressed files" option in setup project, the release package size is 798MB, if I use "In setup file" option, the size is about 350MB. So I think the limitation of visual studio setup project size is not only depend on the RAM but also the number of files in the package.
snowbear at 2007-9-9 > top of Msdn Tech,Visual Basic,Visual Basic IDE...
# 5
I'm glad you've got it working. Big Smile

Regarding the # of files vs. the RAM, it's probably a bit of both, since they both probably generate memory pressure.

DavidGuyerMS at 2007-9-9 > top of Msdn Tech,Visual Basic,Visual Basic IDE...
# 6

Thanks, you helped a lot.
I agree with your point regarding the # of files and RAM.

snowbear at 2007-9-9 > top of Msdn Tech,Visual Basic,Visual Basic IDE...