Search code examples
c#winformsinstallationsetup-project

How to create a custom installation process for .Net application?


I recently created a Windows application project using C#. I have completed all the codings. Now i have to deploy the project. So, i created the SETUP of the project using the visual studio's SETUP PROJECT from the Menu. It works fine, i dont have any kind of issues with it. But the genreral setup i get after deploying the poroject is MSi and it looks very simple.

But the thing i need to know is that, is there any way to create a custom setup? The thing i mean to say is that i want to add logo for my project inside the installer. And certain things like during the installation process, the wizzard should ask for user name and password and few more things like these. For eg: if you are insalling a software like visual studio or some other software the installation wizzard is very catchy and the look & feel is good. Similarly i want to get a setup for my project.

Im not sure how to achieve this.

I tried using the installer class of the visual studio project and im not sure if its the correct option for me so instead of wasting time i just thought to ask it here?

I thought that there may be few third party tools for achieveing this. I tried InnoSetup 5.2 but there i have to write programs manually which is similar to pascal.

Also i heard about the tool called as InstallShield, but it costs and im looking for a free alternative.

Is there any third party tool or software for creating SETUP of visual studio projects.? Or is there any method which i can follow to obtain my customized setup?


Solution

  • You can use a Microsoft Setup project or WIX (easily integrate with Visual Studio). Both are free.

    • You can do almost all of your customization in setup project by adding custom actions.

    • WIX (window installer xml) is the better option. You can do a complete customization from wix but it take some time to understand as it is totally based on XML. Microsoft office 2007 and later setups are based on wix.

    The difference between wix and Setup project is that you have more control over the GUI of setup in wix than setup project and wix allow much more customization then setup project. Take a look at this step by step tutorial for wix.