This mainly directed at John but I'd be interested in other points of view, too. Why the use of NSIS?
I was interested in making a few tweaks of some of the portable apps I've downloaded so I downloaded NSIS. This lead me to discover that it's really for building installation scripts. As such it seems it might be somewhat limiting when trying to use it more as a general purpose language. Comments?
NSIS is actually a great solution for small applications like the portable suites. It can be compiled very easily and provides all the functionality needed to run applications and wrap them so their portable in a simple scripting interface. There are also a number of ready-made plugins which add more functionality to NSIS.
If you were using a specific language to make the portable wrapper like C++, you'd have to manually create the functionality required to be able to wrap the system and make it portable. You'd need to make the functionality to read/write registery keys, you'd need to add the functionality to read in an INI file, etc. With NSIS, this functionality is already there. Why re-invent the wheel?
Rob Loach [Website] [Projects]
It also has (relativly) simple and easy to read syntax as well as being easy to learn. Finally it doesn't need any runtimes.
Yours
Steve Lamerton
Developer Profile Sync & PortaLog
Really, I found NSIS hard to use, both to make installers (better InnoSetup) and to make simple scripts.
To make scripts, I suggest AutoIt, easy to learn and more powerfull then NSIS!