How to make a single page installation wizard? - nsis

I made a python program and I compiled it using Py2exe and it works great.
As you know, all the big softwares shifted to 1-3 steps install. And many have just one page install in which they include their EULA. I found an example of this:
Image:
How to make just a single page wizard in NSIS ? Is it possible to do a single page installer like shows the above image ?

A NSIS installer is never going to be a one page wizard because the actual installing happens on a 2nd page.
There are probably two ways to create the every detail on one page wizard:
Use Resource Hacker to edit the directory page in one of the NSIS ui's in NSIS\Contrib\UIs to add a richedit control and in the script use ChangeUI to apply this new page then at run-time use one of the license plugins to fill the richedit control.
Create a custom page with nsDialogs.

Related

Choose a folder dialog for nsis

I have a problem with the skin that I am using for my nsis installer.
Is there a way to control to not apply skin to choose a folder dialog.
I am using Skincrafter plugin to apply this skin.
Generally if I load it after initializaiton, it applies to all pages/inner dialogs and child dialogs. I do not want Browse for a folder dialog to have a skin.
Can someone please provide any suggestions?
There is no way how to fix this from NSIS.
Asks the authors to add this feature for you or (if the sources are available) modify the it by yourself to fit your needs.
There are also some other skinning systems for NSIS - e.g. mine Graphical Installer (sorry for this little promo :) so you can try to use them.

Inno setup a simple update

Is it possible to use same Inno Setup installer for installing new or updating/upgrading application. For example If the application is already installed the installer will check current version against newly availible. If it is true then I would like the installation procedure to be silent, meaning showing only the progress of update and not all availible installation features (e.g. folder location e.t.c). Thanks.
=======
The solution to the problem was :
Passing the parameters /SILENT/SUPPRESSMSGBOXES
taken from
http://www.jrsoftware.org/ishelp/index.php?topic=setupcmdline
For the standard screens, simply add the following to your [Setup] section:
[Setup]
DisableDirPage=auto
DisableProgramGroupPage=auto
This will automatically hide the directory and group selection pages on subsequent installs (using the previously selected values, by default, unless you've used other settings that disable that behaviour).
Components and Tasks will still display, but that's usually a good thing as it allows the user to add additional components or re-perform certain tasks. (Note that you can use the checkedonce flag on [Tasks] entries to only tick them by default during the initial install, but allow the user to re-tick them manually if required.)
It's possible to skip even more pages through use of [Code], but this is rarely necessary.
Another option is that if the installer is being run from your application itself (eg. as part of a "Check for new versions" task) you can use the /SILENT command line parameter to hide the normal interactive UI.

Pinned shortcut in MFU (Most Frequency Used) Start menu after NSIS setup

A NSIS created deployment setup, installs two executable. After setup, one of them appears in the MFU (Most Frequency Used) list of the start menu. But I don't that.
Is it possible to remove this link or prevent it during install? I have found this document from Microsoft but is very difficult to code this (my knowable is .NET/C#). Or maybe is it possible with NSIS? All tips are welcome.
You could use WriteRegStr to write the NoStartPage value but it is usually not something you should set explicitly except if this .exe is some kind of generic host program for plugin modules.
Is it possible that you just tested the program on this particular machine so many times that the program ended up on the MFU list?
There is no official API to add things to the MFU list and NSIS does not do anything to try to get the program listed there...

How to skip the screen for Name/Organization in Inno Script installer

Inno Setup allows you to see a screen in which you are prompted to input your name and Organization.
How I can make my installer skip this screen?
To skip the Name and Organization input in InnoSetup script do the following:
UserInfoPage=no
Source: http://www.jrsoftware.org/ishelp/index.php?topic=setup_userinfopage
For that page to appear, your setup must have explicitly implemented the CheckSerial event function. If you remove that then the page will also disappear.

NSIS license page

Is there anyway you could resize the rich textbox in the license page of an NSIS installer?
Thanks...
there are several choices that affect the size a little bit, checkbox vs button etc
Switch to the Modern UI if you are not already using it
Copy and resize one of the dialogs in \Contrib\UIs with resource hacker and use ChangeUI in your script
Call GetWindowRect/ScreenToClient/SetWindowPos with the system plugin at runtime in the show callback function for the page

Resources