1.1 About NSIS
The installer is your application's early introduction. Slow or fruitless programming establishments is one of the most disturbing PC issues. A fast and easy to understand installer is in this way a fundamental aspect of your product item. NSIS (Nullsoft Scriptable Install System) is an apparatus that permits developers to make such installers for Windows. It is delivered under an open source permit and is totally free for any utilization.
NSIS makes installers that are equipped for introducing, uninstalling, setting framework settings, extricating records, and so forth. Since it depends on content records you can completely control all aspects of your installer. The scripting language underpins factors, capacities and string control, much the same as a typical programming language - yet intended for the production of installers. Indeed, even with every one of these highlights, NSIS is as yet the littlest installer framework accessible. With the default alternatives, it has an overhead of just 34 KB.
With NSIS 3 you can likewise make Unicode installers, focusing on all the dialects upheld by the OS without show issues.
1.2 Main Features
Small overhead size
NSIS has been intended to be little, quick and productive. While different installers regularly include many kilobytes or a few megabytes to your installer information, a completely highlighted NSIS installer has an overhead of just 34 KB.
Viable with all significant Windows adaptations
You can make a solitary installer that is viable with Windows 95, 98, ME, NT4, 2000, XP, 2003, Vista, Server 2008, 7, Server 2008R2, 8, Server 2012, 8.1, Server 2012R2 and Windows 10.
Exceptional pressure strategies
You can pick between three distinctive coordinated pressure strategies (ZLib, BZip2, LZMA). LZMA pressure gives preferred outcomes over some other regular pressure technique. You don't need to utilize huge self-extricating document modules or different applications, the pressure uphold is remembered for the 34 KB overhead.
Content based
Dissimilar to different frameworks that can just produce installers dependent on a rundown of records and library keys, NSIS has a ground-breaking scripting language. This content language is intended for installers and has orders that help you to perform numerous establishment errands. You can without much of a stretch include custom rationale and handle various redesigns, rendition checks and that's just the beginning. On the NSIS Wiki you can discover significantly more.
Various dialects in one installer
One installer can uphold different interface dialects. In excess of 60 interpretations are as of now included and you can likewise make your own language records. RTL (option to-left) dialects, for example, Arabic and Hebrew are completely upheld. Making a Unicode local installer is additionally workable for significantly more upheld dialects.
Numerous highlights and checks for the objective framework
The content language gives orders you can use on the objective framework. From straightforward highlights like organizer creation and library altering to message/twofold document change, alteration of condition factors and framework reboots. By utilizing one of the gave modules you can even call the Windows API legitimately.
Custom discoursed and interfaces
You can make custom wizard pages to get client include or incorporate setup alternatives. NSIS incorporates a work of art and present day wizard interface, yet it is even conceivable to make your own custom interface.
Module framework
NSIS can be stretched out with modules that can speak with the installer. They can be written in C, C++, Delphi or another dialect and can be utilized to perform establishment undertakings or expand the installer interface. You can utilize the module with a solitary line of content code. Modules are additionally be packed like other establishment information and may be incorporated when you are utilizing their highlights.
Backing for web establishment, record fixing
The NSIS dissemination incorporates a lot of modules that permit you to download records from the web, make web associations, fix existing documents and that's just the beginning.
Task joining, various deliveries and programmed constructs
The NSIS compiler includes a ground-breaking preprocessor. This permits you to effectively coordinate various ventures into a solitary installer or naturally produce installer fabricates. You can likewise produce various deliveries, for example, light and full forms.
Simple and comprehensible record designs
The NSIS content configuration and the organization utilized for interface discoursed are simple, reported and humanly intelligible, so you can alter your records with your preferred supervisor. This additionally makes programmed content age conceivable.
1.3 Feature List
- Generates self contained executable installers
- Support for ZLIB, BZIP2 and LZMA data compression (files can be compressed individually or together)
- Uninstall support (installer can generate an uninstaller)
- Customizable user interface (dialogs, fonts, backgrounds, icons, text, checkmarks, images etc.)
- Classic and Modern wizard interface
- Fully multilingual, support for multiple languages in one installer. More than 60 translations are available, but you can also create your own. Unicode support allowing even more languages.
- Page system: You can add standard wizard pages or custom pages
- User selection of installation components, tree for component selection
- Multiple install configurations (usually Minimal, Typical, Full), and custom configuration
- Installer self-verification using a CRC32 checksum
- Small overhead over compressed data size (34 KB with default options)
- Ability to display a license agreement in text or RTF format
- Ability to detect destination directory from the registry
- Easy to use plug-in system (lots of plug-ins for creation of custom dialogs, internet connections, HTTP downloading, file patching, Win32 API calls etc. are included)
- Installers can be as large as 2GB
- Optional silent mode for automated installations
- A preprocessor with support for defined symbols, macro's, conditional compilation, standard predefines
- A lovely coding experience with elements of PHP and assembly (includes user variables, a stack, real flow control, etc.)
- Installers have their own VMs that let you write code that can support:
- File extraction (with configurable overwrite parameters)
- File/directory copying, renaming, deletion, searching
- Plug-in DLL calling
- DLL/ActiveX control registration/deregistration
- Executable execution (shell execute and wait options)
- Shortcut creation
- Registry key reading/setting/enumerating/deleting
- INI file reading/writing
- Generic text file reading/writing
- Powerful string and integer manipulation
- Window finding based on class name or title
- User interface manipulation (font/text setting)
- Window message sending
- User interaction with message boxes or custom pages
- Branching, comparisons, etc.
- Error checking
- Reboot support, including delete or rename on reboot
- Installer behaviour commands (such as show/hide/wait/etc)
- User functions in script
- Callback functions for user actions
Completely free for any use.
1.4 Unicode installers
Starting with NSIS v3.0 you can choose to create Unicode installers by setting the Unicode attribute. These installers will not work on Windows 95/98/ME but they will allow you to display your installer in any Unicode language supported by the OS.
When building a Unicode installer NSIS variables can hold Unicode characters (0001-FFFF). There should be no need to modify your existing scripts. If you want to read/write Unicode files, specific instructions have been added to read/write UTF-16LE strings from/to disk.
No comments: