VB Converter

From NSIS Wiki

Author: Nutster (talk, contrib)


The Package and Deployment Wizard (P&DW) that ships with Microsoft's Visual Basic 6 does some things that are desirable in an installer, but has several limitations. This program takes the package created by VB6 P&DW and creates an NSI file which overcomes some of the problems that P&DW installers.


VB6 P&DW install sets need to be uninstalled before a new version is installed. Installers created by this program do not have this limitation, however, if the list of executables or libraries changes, then uninstallation is recommended.

The generated NSI file will make a good installer when compiled, but its real advantage is that it builds most of NSI file required to install your Visual Basic application. This is an excellent starting point for creating a very robust installer and making sure that you don't miss anything.


Download and unzip the installer linked below. Run the installer. It will create a folder in the Start - Programs folder called NCC which will have a sub-folder of VB6 Converter. The program to run is in this directory.

Before running VB6 Converter to create an NSIS installation set for your Visual Basic project, run the Microsoft Visual Basic 6's Package and Deployment Wizard from within VB6. It is probably easiest to create a single CAB file in this step, but the CAB file will be ignored by VB6 Converter. The VB wizard will create a directory under the project directory named Package, which contains the VB installation set.

After the Package and Deployment Wizard has finished, run the VB6 Converter. The program will ask you for the location of the Package directory and what path and filename you want for the NSIS installation script it will produce. The default location is the Package directory you specify. Optionally, it will ask you for the extension and description of data files to associate with your VB application. After a short while, the program will create an NSI file (the progress can be tracked by pressing Show Details).

Now you can either compile the resulting NSI file to create a pretty good installer or edit it first and add your custom touches. If you make a mess of things you can always re-run the program and get back to the default installer script for your package.

If you want to recreate your installer after making some changes to your VB application, just compile it (Make EXE in VB) and re-compile the script.


This version of VB Converter uses the classic UI, not the modern UI.

This program is intended to only work with VB6 using the Package and Depoyment Wizard. This program has only been tested with NSIS 2.19-2.46 with Microsoft Visual Basic 6 Service Pack 6 running on Windows 98 with a Pentium II Celeron processor. I would appreciate any feedback others may have testing this on other systems. This is especially true if it does not behave as documented and possible solutions would be nice as I have limited access to other systems.

Version History

  • Version 1.0
    • Initial release. Ability to create a NSIS installation script from a VB6 installation set.
  • Version 1.1
    • Fixed bug that generated buggy uninstaller
    • Added ability to associate a file extension with the VB application

Future Direction

I am writing a version of the VB Converter that uses the Modern UI, instead of the classic UI. I plan to have the program read the VB project file instead of needing to read the setup list file. I would also like to be able to recognize and support other versions of VB.


Download the current version zipped: VB6-NSI-Setup.zip (62 KB)

Unzip and run the installer inside.


This zipped file contains the installer for VB6 Converter. The installer installs: the VB6 Converter program (written in NSI Script), the VB6 Converter.nsi source (optional) and the documentation (optional). I think it is kind of cool that I can create a NSI script that creates other NSI scripts.

Personal tools