john.mcnamee
25th April 2005 00:57 UTC
Multiple output files?
I'm working on an installation that involves thousands of files that add up to a lot of data (1.5 GB and growing!). I don't want one huge setup.exe. What I really need is a small setup.exe and a few setupxxx.dat files (one per section would be great). I looked at CopyFiles, but that would require thousands of uncompressed files on the install media. I also looked at creating a silent installer for each component, and having the main installer run each one as a child process. That kind of works, but has a bad user interface. The progress bar and status window only update as each component gets installed, rather than each file.
Please tell me there's some way to do this with NSIS, so I don't have to switch to Microsoft Installer :cry:
Joel
25th April 2005 01:21 UTC
How about ZIP, RAR, CAB compress formats?
NSIS can handle'em :)
john.mcnamee
25th April 2005 01:47 UTC
Originally posted by Joel
How about ZIP, RAR, CAB compress formats?
NSIS can handle'em :)
Maybe I'm being especially dense today. :( After reading the documentation and searching the FAQ and forum, I didn't see how NSIS could do this.
Let's say I have an external ZIP file. How do I get NSIS to extract it? Remember, I need to show each filename in the status window and move the progress bar, as if I was using File commands. In other words, I want to replace
Section "Name"
SetOutPath "$INSTDIR"
File "..\Foobar\file1.dat"
File "..\Foobar\file2.dat"
;...
SectionEndwith something like
Section "Name"
SetOutPath "$INSTDIR"
Unzip "$EXEDIR\foobar.zip"
SectionEndand have the user experience remain exactly the same.
Comperio
25th April 2005 03:00 UTC
You could use the zipdll plugin
http://nsis.sourceforge.net/archive/....php?pageid=56
You'd still have to unpack each file and then zip. If you wanted to show each file, you can simple use a DetailPrint command for each file you are uncompressing.
RobGrant
25th April 2005 08:54 UTC
This interests me as well - how would one go about finding out the paths of each unzipped file, assuming one used some sort of blanket unzipall method?