Disk spanning
How can I create an installation, which will have two cd`s?
Archive: Disk spanning
Disk spanning
How can I create an installation, which will have two cd`s?
Use CopyFiles or a plug-in like ExtractDLL.
Ok, but does installer copies itself to hdd, or runs from cd? I mean, will it need to read itself during install process?
Copy it to the HD just to make sure.
When using CopyFiles, how can one prompt the user for a 2nd disk when CopyFiles has finished?
A simple message box should do it. After the user clicks OK, check the right disk is in and continue copying if it is. If it isn't, just ask again.
Is the standard way to verify the correct disk to check for the existence of a specific file? Or is there a way to check the CD name or something? Will the installer know about CD spin-up times?
Thanks.
There is no standard way that I know of. I see nothing wrong in verifying by a certain file. Unless Windows does this internally, the installer won't know about CD spin-up times.
Is there an example of using CopyFiles? Can you do:
CopyFiles "path\to\files\*.*" "$INSTDIR\"
Or do you need to specify one at a time?
You can use wildcards, yes. But always use full paths to be sure. You'd probably want to use:
CopyFiles "$EXEDIR\path\to\files\*.*" $INSTDIR
Ok, but how can I get a label of a cd?
Thanks!
Originally posted by kichikI am having 1 installer that extracts zip files from several
Copy it to the HD just to make sure.
Will copying the installer file to the HD help in caseYes. This way, Windows will always have somewhere to get the data from.
it is not kept in memory?
Originally posted by kichik
Yes. This way, Windows will always have somewhere to get the data from.
Well, you have to execute it and exit the one executed from the CD-ROM. Send the one on the HD something on the command line telling it that it's no longer on the CD. You'd probably want to tell it what letter the CD is on too, so you can copy stuff from there.
Quote:
Yes, just execute the file on HD in .onInit (which is called before anything is shown) and kill the first installer afterwards (use Abort from .onInit).
Hi,
Thanks a lot for your help.
I have now written a small script that does the following:
1. If the installer is called without parameters I assume that it
was called from the CD-rom.
2. The installer is copied to HD
3. The installer from the HD is called.
4. The original installer is terminated.
The script is attached to this posting.
I am not very experienced in writing NSIS scripts and would
appreciate any feedback :-)
Again, thanks a lot for your help.
Barbara
Seems good. Just don't forget to replace E:\ with $EXEDIR for release.
There is just a little thing. You have the following at the end of the .onInit function:
Push $R0
Push $R1
Push $R2
Push $R9
Originally posted by kichik Well, you have to execute it and exit the one executed from the CD-ROM. Send the one on the HD something on the command line telling it that it's no longer on the CD. You'd probably want to tell it what letter the CD is on too, so you can copy stuff from there. Can I make the transition from execution of installer from CD-rom to execution of installer from HD invisible for the user? |