Installer Framework

This page offers slightly more detail on the installer framework and installation process.

Overview of Installer Framework

In order to support an ever-growing pool of modules and resources, individual modules are now responsible for expressing any external file handler definitions, file dependencies, firewall dependencies,  or dependencies on other modules.

The procedure above is then run through the InstallerMaker.exe file, which has logic to convert it into WiX files.

The installer project is then generated automatically based on the modules included.

This newly generated WiX project can then be compiled as before into an MSI. The Bootstrapper.exe is no longer needed; but, if we have a strong desire to use a .exe instead of an MSI file, it can create a wrapper.

Installation Directions

Inside the NDEVR API directory, there is a new .exe, InstallerBuilder.

By default, the installBuilder will create an installer for the last built project; however, there is the option to pass a specific ModuleList to the installerBuilder.
The three that are important for Carlson (HOOK, Carlson Scan, Carlson Boretrak) are located in the respective folders.
Output WiX project from running the .exe will be written to:
$(NDEVR_API_DIR)\VS\$(Platform)\$(Configuration)\Installer\NDEVRMSI.wixproj
 
This can then be built via WiX Toolset V4, the result of which will be:
$(NDEVR_API_DIR)\VS\$(Platform)\$(Configuration)\Installer\bin\[language]\[app_name] [app_version] Installer.msi