stopasking
28th March 2011 08:20 UTC
Compile files into Setup.exe
Hi
I wonder if there is a way to complile some files into the Setup.exe to hide them from the eyes of the customers.
In the $INSTDIR i have two folders. lic which contains somie license files and src which contains registry files, scripts, etc. pp.. Basically i want to hide my know how.
Is there a way to include these two Folders into the Setup.exe? This way i also need to distribute only the Setup.exe file which contains all the necessary data.
It would be possible to put the whole NSIS stuff into an self extracting archive, but this would make the whole build process more complex and i want to avoid that if possible.
Thanks and regards
dontAsk
Highcoder
28th March 2011 08:39 UTC
...?
Huh?
Aehm... if you do a normal setup all installfiles are stored INSIDE the NSIS executable so they are hidden.
Section
setoutpath $instdir
file "c:\foldercontainlicensefile\licensefile.lic" ;for one file. Or do the next line...
file /r "c:\foldercontainsmorefiles\*.*" ;for a bunch of files/folders (preserves file/folder structure)
SectionEnd
So these files would be stored in installer executable and will extracted to the $instdir during setup.
The normal way. So i wonder how do you do it?
sincerely
stopasking
28th March 2011 08:51 UTC
Hmm. Yes. That seems true for all the file i want to Install by copying them. But there are also some Files (most of them) i execute without moving them.
Probably i should've tought about moving them to temp bevore executing.
The main install is done with an MSI file which has not yet been replaced with a more suitable method.
But thanks. Didn't see the obvious.
Highcoder
28th March 2011 09:02 UTC
:-)
Ah ok...
Yes. The idee to extract them to %temp% and execute them seems to be the best way.
Section
setoutpath $pluginsdir
File "c:\folder\test.exe"
execwait "$pluginsdir\test.exe"
SectionEnd
Function .OnInit
InitPluginsdir ;initialitze the (unique) NSIS tempfolder for this installation
FunctionEnd
have fun. :)