Archive: I would like NOT to compile all files into a big EXE setup file


I would like NOT to compile all files into a big EXE setup file
I like all files not zip and complie into a big exe file, just let all the folders and files as its'-selfs.
so how can i write a script like this:
Copy_MyStandAloneFile_In_SourceMediaFolder DesFolder

Thanks!


Excerpt from the documentation


4.9.3.2 CopyFiles

[/SILENT] [/FILESONLY] filespec_on_destsys destination_path [size_of_files_in_kb]

Copies files from the source to the destination on the installing system. Useful with $EXEDIR if you want to copy from installation media, or to copy from one place to another on the system. Uses SHFileOperation, so the user might see a status window of the copy operation if it is large (to disable this, use /SILENT). The last parameter specifies how big the copy is (in kilobytes), so that the installer can approximate the disk space requirements. On error, or if the user cancels the copy (only possible when /SILENT was omitted), the error flag is set. If /FILESONLY is specified, only files are copied.


It works but I can't use DLLReg and some other micro and funcions.
This Command ONLY COPY.
Thx


File also just copies, but unlike CopyFiles it does this from the EXE itself. You can still use RegDLL and other instructions if you use CopyFiles.


!insertmacro UpgradeDLL "$EXEDIR\MyFolderNeedtoCopy\dllname.dll" "$SYSDIR\dllname.dll"

I can't compile this script, It may means I CAN NOT use $EXEDIR for some functions(like: GetDLLVersionLocal etc..)


As this macro uses File internally you will have to update it a bit. Just replacing File with CopyFiles should work.


get the pram "$EXEDIR\MyFolderNeedtoCopy\dllname.dll" to GetDLLVersionLocal
It can't work: Can not find the file,This may means $EXEDIR CAN NOT be right in script time and complie time ,but OK in install run time!


Of course $EXEDIR is not defined. How can the compiler know where the installer will be in the future? Use a specific full path or a relative path.