Building and Packing a VB.NET Application using NSIS
1. Introduction
1.1 What is NSIS?
NSIS (Nullsoft Scriptable Install System) is a free and open-source tool used to create Windows installer (setup files) for software applications. It’s known for its flexibility, small size, and scripting based approach, allowing for the creation of complex and customized installers. NSIS is designed for internet distribution and offers features for web installers, communication with other software, and handling shared components. It is a tool that allows programmers to create such installers for Windows. It is released under an open source license and is completely free for any use.
1.2 Why use NSIS?
- Create a professional installer for your Windows applications.
- Add prerequisites like .NET framework, runtime or system checks.
- Customize UI, license agreements, installation path, shortcuts, etc.
- Supports silent installations (useful for enterprise deployment).
- Compression to reduce installer size.
1.3 Main Features:
- Small overhead size: NSIS has been designed to be small, fast and efficient. While other installers often add hundreds of kilobyte or several megabytes to your installer data, a fully featured NSIS installer has an overhead of only 34KB.
- Compatible with all major Windows versions: You can create a single installer that is compatible 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.
- Script-Based Installation: NSIS uses a powerful scripting language designed specifically for creating installers. Unlike other tools that just package files and registry keys, NSIS lets you write custom logic to handle tasks like upgrades, version checks, and more.
- Support for Multiple Languages: NSIS installers can show the interface in many languages—over 60 are already included. You can also add your own.
- Easy-to-Read File Formats: NSIS uses simple and well-documented script and dialog formats. They are easy to read and edit with any text editor, and can also be generated automatically.
- Custom Dialogs and Interfaces: NSIS lets you create custom pages to collect user input or show settings. It comes with classic and modern interfaces, and you can even design your own.
