visual-studiovisual-studio-2013msbuildinstallationsetup-project

Are we still stuck with installer projects .vdrpoj or WiX in Visual Studio 2013?


Is there no better Installer project in Visual Studio 2013 than the Setup projects or WiX?

I have a .vdproj and some WiX projects since Visual Studio 2008 which I now need to migrate to Visual Studio 2013. Do I still have to use the same two project types or is there a better solution?

Setup projects are still not supported with MSBuild and the WiX projects are still XML (although I see a visual designer is now available to purchase).

I am sick of both of them. I need something that is visual and that is supported by MSBuild. We have many custom actions too.


Solution

  • WiX is the default way to go for free solutions that need to do advanced steps and must be able to integrate into Team Build and MSBuild.

    Product                  Free/Paid        VS designer    MsBuild Support
    InstallShield LE              free                yes                yes
    InstallShield Pro             paid                yes                yes
    InstallAware                  paid                yes             yes 3)
    Advanced Installer            free                yes                yes
    NSIS                          free                 no                 no
    MS VS Installer Projects      free                yes                 no
    Wix Toolset                   free              no 1)                yes
    InnoSetup                     free                 no                 no
    PS App Deploy Toolkit         free              no 2)                 no
    

    Remarks:

    1. There is an extension that seems to support a user interface for WiX
    2. Since it's PowerShell based you could use the Visual Studio PowerShell Tools.
    3. Advanced Installer can generate an MSBuild compatible .*proj file on request.

    Links to products:

    Remember that Team Build 2013 has a set of native extension points that allow you to execute PowerShell scripts after build which can trigger pretty much every type of installer project you need. Non-MSBuild-based systems like the PS AppDeploy Toolkit or NSIS can be triggered with relative ease this way.

    XML and script-based UI's are generally easier to merge and branch and provide better maintainability over time as you're pretty much free to define the modules in separate files and provide comments on why certain files are deployed where or which commands are executed when.