Archive: Multi-CD Install in a Cross-Platform World


Multi-CD Install in a Cross-Platform World
  Installer Greats--

I have to make an installation CD set for both Mac and Windows that spans across 3 CD's. The CD set is a requirement of the project. In order for it to fit on 3 CD's, content needs to be shared between mac and windows-- 1 250MB file (on disk 1) and 2 620 MB files (disks 2 & 3). I've got it all figured out on the Mac, copying files off the CDs and then politely asking for the next disk. NSIS is proving to be a bit difficult.

Searching the forums/wiki, I've found Nopey, which will allow me to eject a disk, but is now considered hazardous by virus programs. I've found the CAB files solution, but is not an option in our X-Platform environment.

My current strategy is this:
1. a silent installer that copies the real one off into $TEMP
and stores the location of $EXEDIR (and quietly disappears into the night)
2. Real installer launches in all it's goodness and copies the first file off the first disk, reading my magic EXEDIR key above
3. Installer then ejects disk 1 and asks for disk 2
...and so forth.

I guess my questions are:
a. Is this the right strategy?
b. how do I eject the disk?
c. Is there an effective way to get the drive name (not just the drive letter)?

Thanks for any help

AF


a. Sounds good (Inno setup has proper disk spanning if you need a real alternative)

b. http://nsis.sourceforge.net/Open_%26...cal_Disk_Drive (See my notes on the comment tab on that page for info on how to eject specific drive letter)

c. Do you mean the label of the disc? or the name of the actual hardware cd rom device?


Originally posted by Anders
c. Do you mean the label of the disc? or the name of the actual hardware cd rom device? [/B]
Anders--

Thanks for the response. I was thinking the label, ie myApp disk 2.

Thanks again!

Allen

system::call 'kernel32::GetVolumeInformation(t "d:\",t.r0,i ${NSIS_MAX_STRLEN},*i,*i,*i,t,i ${NSIS_MAX_STRLEN})'

>MessageBox mb_ok "$0"

Anders--

Thanks again. This is awesome. Glad I picked NSIS!:cool: