Choosing an installer product that is free and will download / install the .NET Framework

I am currently using the Visual Studio installer (Setup Project) in Visual Studio 2010 as the installer for MyProgram. This one has some fancy bugs and is not very customizable, so I would like to switch to another installer product. Here are my requirements:

  • Must be free (and licensed for commercial use)
  • Windows Installer 3.1 and .NET Framework 4.0 must be installed if the client does not have them
    • The installer will download them if they are unavailable.
    • The code for detecting the .NET Framework and downloading it must be written by Microsoft (I do not want to update the hard drive URLs and registry keys in the future). I know that the Windows SDK includes an installation bootstrap that does this (C: \ Program Files \ Microsoft SDK \ Windows \ v7.0A \ Bootstrapper)
    • In the future, when the .NET Framework 5 is released and MyProgram uses it, the installation code does not need to be changed, the updated installer product should see that MyProgram now uses the .NET Framework version 5 and installs that

Here are my current options:

Visual Studio Installer:

NSIS:

Inno Setup:

WiX:

  • A steep learning curve ... not sure if I want to spend weeks studying it just to find out that it has the same uninstall problem as the Visual Studio installer (since they both use MSI files).

InstallShield LE 2010:

  • Downloading this requires me to set up a fake email account in order to register in order to download it. Then, once it is installed, it must contact the company’s servers and give them some confidential information before they even allow me to try the free version. This is the most insidious form of DRM that exists, and I will not accept it.
+4
source share
2 answers

WiX v3.5 is currently in beta, which will be released soon. This latest addition, Burn, is a bootloader / chain designed to do what you need.

WiX is a steep learning curve, mainly because you need to learn how to use MSI to do something slightly complicated. But it meets your requirements.

My choice is likely to be NSIS just because installer scripting is so simple. Although adding a .NET premise is manual, how to do it is well understood and published freely.

+3
source

It seems like the best solution is to change my installer product to WiX . I was able to create a simple installer with it in a short amount of time, and it works as it should.

As for the bootloader, while I wait for β€œBurn” to be released, I can enable the Windows SDK bootloader using this tutorial .

0
source

Source: https://habr.com/ru/post/1311675/


All Articles