Archive: User Input


One of the things that it is lacking is the ability to get input from the users. The installation allows for writing to INI files, but there isn't a way to dynamically get information from the user to put into the INI files. An example would be during installation of winamp, the user is asked for their favorite shoutcast server, the user is then able to plug in the url for his favorite server. The use of user input would greatly enhance the product.

Would it be worth the bloat to add this capability?


Generally, if a setting in an program's INI file is meant to be edited by the user, there should be a way to edit it from the program. This is basic design philosophy and oherwise generally good manners.

However, for one-time settings, it could be useful to have a screen during setup. So, do what WinAmp itself does:

Create your own post-install program. After NSIS copies the files, have it auto-close and launch a small application that finishes the installation. Or build it into your main application and have it triggered by a command-line switch.


Currently, the installation allows only the selection of the install directory. IMHO it would be desirable to be able to select other directories or files as well, e. g. if you are installing some kind of script engine, a user might be asked which directory he keeps his scripts in and so on. Therefore, I think there definitely is a use for user input. Asking for additional directories of files should be rather easy to implement, since there already exists this installer page asking for the install directory.

Snowbird


For those kind of situations you could make an installer "scrpt_inst.exe", pack it into your main installer, then install scrpt_inst.exe to temp, start scrpt_inst.exe (which would then install the scripts to a user-defined location), and finally, when scrpt_inst.exe is done, erase it. Using the right combination of settings, it should be virtually transparent to the end-user.


Alternatively, you could alter the source code of NSIS to suit your purpose.

See thread http://forums.winamp.com/showthread.php?threadid=49419 , in which we discussed allowing the user to select the START MENU/PROGRAMS/myProg location, for reasons why this can be troubling to other users. Although I argued against START MENU selection, I'm in agreement with you about the example you gave.

-=Gonzotek=-


For basic bits of information, like name, etc. I use AutoIt. I write a script that asks for a piece of information, and it can be saved to the registry, or an INI file.

I then compile this small script into an EXE and include it in the installer.

Hope this helps!