Inno Setup: is it a script based deployment program? - inno-setup

I am using Inno Setup for the first time. When I start the program I am presented with a blank script page. Is scripting the only way you can create a setup package? Is there anything else?

Yes, Inno Setup is script-based (thank God -- this really makes things a lot easier if you ask me). But there is a "wizard" that lets you create a new setup by a simple step-by-step approach in a simple GUI. Simply choose "Create a new script file using the Script Wizard" in the "Welcome" dialog box that appears when you start the Inno Setup Compiler.
If you have disabled the Welcome dialog box, use File/New instead to start the wizard.
Update
I was just informed about the new InnoIDE.

Inno Setup is script based. If you want a GUI Builder then you may check the site "Third-Party Files" on Inno Setups Homepage.

The easiest way to start is with one of the example scripts included with the install.
Just change the product name in the sample and you are set for 90% of basic installs

Related

Is there no built-in solution for creating mutexes?

In Inno Setup, there is the AppMutex directive.
Using this directive, one can make Inno Setup stop / not start while this mutex exists.
I experience it sometimes that my users accidentally open my application while the setup (and update in this case) is still running.
This locks files, and Inno Setup can not replace them.
The solution in my opinion would be that Inno Setup creates a mutex and automatically closes it when it's finished.
When the user starts my app, the app would check if the mutex (which was created by Inno Setup) exists, and if it does, my app would close right away.
However, I do not find this as a built-in option in Inno Setup.
Do I have to code it manually, or am I missing something?
Thank you!
That's what SetupMutex directive does.
Or you can do it programmatically using CreateMutex function.

Changing restart message on Inno Setup Prepare To Install page

I am building an installer in Inno Setup v6.2.1 with prerequisites, which include .NET, runtimes, and KB fixes (Windows 7 SP1). The goal is to do potentially several reboots depending on if the machine is missing KBs or .NET etc.
I am able to achieve what I want so far using PrepareToInstall and can change the text by returning the appropriate string. No problems... however I can't find a way of changing the.
Setup must restart your computer. After restarting your computer, run Setup again to complete the installation of xxxxx
Because I am creating a runonce entry, the installer will automatically run after reboot (which it does). The text "run Setup again" is not relevant in my situation and I want to change the text to say that the installer will continue once you restart.
I have tried to find where to change this text but with no success. I assume that PreparingMemo might be the candidate but no luck or not sure how to use it. Any help would be appreciated.
See Handling and customizing errors and messages in Inno Setup.
This particular message is defined by the PrepareToInstallNeedsRestart message.
You can change it in the [Messages] section:
[Messages]
PrepareToInstallNeedsRestart=Setup must restart your computer. After restarting your computer, the Setup will continue to complete the installation of [name].%n%nWould you like to restart now?
If you need to change the message text dynamically, assign WizardForm.PreparingLabel.Caption. E.g. from CurPageChanged(wpPreparing) event.

NOICONS switch in Inno setup tool not working

I am have installed innosetup-5.5.9-unicode.exe on windows 8.
I wrote an application say demo
when I try to install
c:\demo-2.0-x86.exe /NOICONS <== It is getting installed with out any issue, but as per Inno tool documentation
/NOICONS
Instructs Setup to initially check the Don't create a Start Menu folder check box on the Select Start Menu Folder wizard page.
But its still creates shortcuts and is visible in Start Menu Folder.
Do we have any workaround for this ? or need to write some extra code ?

Inno setup: How do I hide the the Add/Remove entry in the control panel?

I have created an install using Inno Setup.
I'm using Uninstallable=true and everything is fine but I need to get rid of the entry in the Add/remote programs applet.
Is there a magic setting that I don't know about?
Thanks
Look at the CreateUninstallRegKey directive.

INNO: Disallow "Ignore" when file is in use

I am using Inno Setup for the installer for my windows application. If a user has the application when the installer is run (eg. for an update), the installer will stop when it is unable to replace a file in use, and it allows the user to select whether to Abort, Ignore, or Retry.
I would like it to only allow Abort or Retry and remove the option to Ignore. Does anyone know how this can be done?
Or if this can't be done, how can I make the installer abort if the application is running?
The easy way to detect whether the application is running requires co-operation from the application, so it's best to work this out before you ship your first version. Use Inno Setup's AppMutex setting. There is an example in the Inno Setup knowledge base for setting up a mutex visible in multiple sessions. There is more about AppMutex in Inno Setup's help file.

Resources