Archive: Copyfiles, extenernal files installer


Copyfiles, extenernal files installer
Hello,

Background info:
I am doing an installer for CD that has to install files from CD. As there are multiple installers that do share some files, all files are external and not included in the installers.

My questions:

a) Cancel Button
It says that not using the /Silent option enables the cancel button. Are you sure? I am using MUI and the Cancel button is greyed out with and without that option.

b) info text
The info text/details only prints where the files are going to but not the file names. What do I need to do to have the complete data (path&filename) displayed/mentioned?

d)file sizes
I see that CopyFiles can have additional info about the file size. Now I don't want to go over so many files manually and collect file sizes. I am a newbie to this, so maybe somebody can help me. Is it possible to have a macro that takes the parameters for a CopyFiles and does fileSize determination plus execution of Copyfiles including filsize? I know that there are some functions in the wiki for getting the size but i don't know much about NSIS scripting and how to create such macros. Current real life example line
CopyFiles /SILENT "$EXEDIR\Movies\intro.avi" "$INSTDIR\Movies\"

Maybe a macro could look like this
CopyFilesEx /SILENT "$EXEDIR\Movies\intro.avi" "$INSTDIR\Movies\"

Maybe such a macro could maybe also be extended to handle the question c)issue?

thanks a lot for your time and help
Dom


As a work around you could use nxs plugin (find it on wiki) along with each CopyFiles instruction to provide the extra info and a nice look. Though, you must provide within your script all those info. You may use FIleFunc to create a file list with needed info (file names, size, etc) as a partial automation of the job.


  1. It enables the cancel button for the copy operation itself, not the entire installer.
  2. That's how Explorer's file copying dialog works. To print your own details, you can use DetailPrint.
  3. ?
  4. Use AddSize or some automatic method using SectionAddSize and Locate.