Readme


==============================
Graphical Installer for NSIS
==============================


Copyright (c) 2006 - 2024 unSigned, s. r. o. All Rights Reserved.


Product website: http://www.graphical-installer.com/

Developer website: http://www.unsigned.sk/

Email contact: customers[at]unsigned.sk


This document is related only to Graphical Installer for NSIS (Nullsoft Scriptable Install System).

For information about Graphical Installer for Inno Setup see appropriate documents in Graphical Installer for Inno Setup package.


=============
About
=============

Graphical Installer is an extension for NSIS. It allows to change the design of whole NSIS installer.
This is a fourth generation of this product and it has many new features, fixes and improvements.

It is possible to set:
- Custom picture for installer background
- Custom icons (Installer/Uninstaller/...)
- Custom picture for buttons (Next/Back/Cancel/Browse/...)
- Custom picture for scrollbars (License/Readme/...)
- Custom colors for texts (Headers/Labels/Links/Static texts/...)
- Custom colors for buttons texts in various situations (normal/focused/pressed/disabled state)
- Custom colors for installation progress bar (foreground/background)
- And many more aspects of the installer!

It is also possible to create installers with irregular windows where part of window can be fully transparent,
and it is easy to create 'Visual Studio Setup' like installers without any pictures - by using colors only!

Main features:

* Fully customizable graphical interface
It is possible to change graphic look of whole installer - background picture, icons, buttons picture and many more!

* Creating installers with irregular windows
Part of window can be fully transparent - you are no more tied to rectangular shape!

* Easy to be integrated into existing NSIS scripts
All you need is to add references to this installer, no hard-coding is necessary!

* Templates and examples for instant start
We provide many templates and examples, so your installer can be finished in few minutes!

* "Graphical Installer Wizard" for creating new and converting existing NSIS scripts
Standalone application and plug-ins for Microsoft Visual Studio, HM NIS Edit, Embarcadero RAD Studio and Eclipse IDE for fast creating installers with cool design.

* Full 100% compatibility with other NSIS plug-ins and functions
Our product use the same core as traditional NSIS installers - there is no difference in writing scripts!

* Custom dialogs and interfaces
Thanks to Modern UI 2 it is easy to add custom wizard pages and elements to them (textboxes, checkboxes ...)

* Support for multiple languages (also Unicode languages)
Fully multilingual support (including RTL languages) in one installer!

* Simple switching between 'skinned' and 'classic' design of installer
Modify only single line of script to completely change the design of your installer!

* Drag & Drop installation page with advanced security
Prevents bots from installing the software (human interaction is required to continue the installation, similar to macOS .dmg installer)

* ... and much more ...


=================
Requirements:
=================

REQUIRED: You need to have NSIS installed:

- NSIS 3 (preferred) or NSIS 2 - http://nsis.sourceforge.net/

This version is compatible with any NSIS 3 version (also in Unicode mode) and with NSIS 2 (version 2.20 and later).

It also supports Unicode installers from http://www.scratchpaper.com/ (latest version is 2.46.5 from May 10, 2012).


OPTIONAL: To edit NSIS scripts you need any text editor or you can use advanced IDEs. These are recommended:

- Visual & Installer (recommended) - an extension for Microsoft Visual Studio 2005 - 2022 with syntax highlighting, complete word, go to, etc.) - http://visual-installer.com/
- RAD & Installer (recommended) - an expert for Embarcadero RAD Studio 2009, 2010, XE - XE8, 10 Seattle - 11 Alexandria with syntax highlighting, complete word, go to, etc.) - http://rad-installer.com/
- HM NIS Edit 2.03 - http://hmne.sourceforge.net/
- Eclipse IDE with EclipseNSIS 0.9.8.1 or newer - http://eclipsensis.sourceforge.net/


Please notice:

To create FULL Unicode installers use ***Unicode*** version of all used plug-ins with Unicode build of NSIS.

NSIS 3 fully supports both ANSI and UNICODE installers.


====================
Installation
====================

1. Follow the automatic Setup Wizard.

2. During the setup process all necessary components will be installed, if they are not present on your machine.
For correct function of Graphical Installer these NSIS components will be installed:

- GraphicalInstaller plug-in (core file of Graphical Installer which performs skinning)

- Graphical Installer Wizard (standalone application and plug-ins for Visual & Installer, RAD & Installer, HM NIS Edit and Eclipse)

- ButtonEvent plug-in (a plugin that allows to add a custom button and tie a NSIS function to it, v0.8)
Source: http://nsis.sourceforge.net/ButtonEvent_plug-in

- nsDialogs_setImageOle.nsh (header file that adds the ability to use most JPG, GIF and ICO files for bitmap controls created via ${NSD_CreateBitmap} and a new ${NSD_SetImageOLE} command, v1.2)
Source: http://nsis.sourceforge.net/NsDialogs_SetImageOLE

- Graphical Installer core files (.nsh files, .exe files, documentation, other tools, utilities, ...)

- MessageBox Designer (user friendly utility for simple creating MessageBox-es)

- SetupProjects Converter (tool that converts MS Visual Studio Setup and Deploy projects (.vdproj), InstallShield Limited Edition projects (.isl) and Advanced Installer Projects (.aip) into NSIS (.nsi) or Inno Setup scripts (.iss))

- Examples and Skins

3. Setup process will try to detect your NSIS version. If UNICODE version of NSIS is found the setup offers you the option to install UNICODE versions of plug-ins.
In NSIS 3 both versions: ANSI + UNICODE plug-ins are installed.

4. At page 'Choose installation Location' choose path to your NSIS directory.
Graphical Installer cannot be installed into other directory, because it is tightly linked with NSIS core files!

5. The Setup process offers you to install NSIS editors. These editors are recommended, but not required for Graphical Installer.

6. When Setup finishes run your preferred IDE. Search for a 'Graphical Installer' option in the main menu. Use it to create new installers with Wizard.


====================
Creating installer
====================

You have several options:

1) To create NSIS scripts manually from the scratch (using any kind of text editor).
2) To edit some of the Examples script (which can be found in Graphical Installer\Examples directory)
3) To use a supplied Graphical Installer Wizard plug-in which has a lot of functions and can generate whole script for you.
4) To use a Visual & Installer - a Microsoft Visual Studio extension for creating NSIS installers directly from Visual Studio 2005 - 2022.
It also contains Graphical Installer Wizard so you have all tools in one package - download from http://www.visual-installer.com/
5) To use a RAD & Installer - an Embarcadero RAD Studio expert for creating NSIS installers directly from RAD Studio 2009, 2010, XE - XE8, 10 Seattle - 11 Alexandria.
It also contains Graphical Installer Wizard so you have all tools in one package - download from http://www.rad-installer.com/

Few tips:
- read comments in .nsi and .nsh files, there is a lot of information
- browse the Graphical Installer\Examples directory, there are many useful examples
- installer design can be changed via .graphics.nsh file. This file is unique for each installer
- functions and various macros are defined in GraphicalInstaller_functions.nsh file. Do not edit this file unless you are a NSIS expert!
- all projects using Graphical Installer must have defined symbol GRAPHICAL_INSTALLER_PROJECT_UID in .graphics.nsh file
- if this symbol is not found the script cannot be compiled correctly
- see examples and tutorials for NSIS, they can teach you a lot!
- background image is exactly 690x496 pixels, inner image is 450x228 pixels. These files can be generated via BitmapCutter tool
- read the enclosed CHM documentation or online manual for more info.

=========================
LICENSES AND COPYRIGHT
=========================

See Manual and EULA.rtf

See Version.txt to find out what is new in this version. Known bugs and problems are mentioned in Bugs.txt