Archive: How to...


How to...
Hello I'm a newbie using an NSIS
I need to create a wizard that with next requirement:
1) My Aplication files
2) directX
3) framework 2/3
4) Mfc

And I need only 1 to be packed in the output setup.exe package. All other utilities must not be packed and will be placed on the CD in the Redist folder. But also user I must allow user to not to install some of the utilites. Can it be done using sections. Probably there is a parameter to pack or to use an external folder.

Thank you


try ZipDll or CabDll if u want to put the files in an archive on ur CD.

there is a function to check the insatlled version of the .net framework

http://nsis.sourceforge.net/Get_.NET_Version


Thank you for your reply

Probably my post had an incorrect information

There might me next structure that will be on CD

Folder Redist that will contain
dotnetfx2.exe
dotnetfx3.exe
...

and the setup.exe file

And the wizard should not pack the folder Redist. Is it possible to make script not to pack them but to take from the relative path?


To run an installer from a set path, use 'Execwait FULLPATH'.

Simply use the wizard to allow the user to install or not the different sections. After the script is generated, use Execwait to run the files that have just been copied over. Make sure to put the Execwait inside the correct sections, so that the Execwait commands only run if the section is ticked to install.

Think that should work.


Thank you hungryOrb
the Execwait is the solution

But I'm also intrested in the example that mentioned fabian.rap.more

I found the example that shows how to check for framework version and if it does not exist it will download the required.

http://nsis.sourceforge.net/DotNET

this exapmple work with framework 2.0
But when I gave the version 3.0 it doesn't check correctly and returns that I have the only FW 2.0 installed. But I also have the FW 3 and even 3.5 installed.

How can I modify that script to make it check correctly for installed version?

Thank you


put some detailprint some messageboxes at keypoints and see what it returns then modify it accordingly


This could be a solution thank you