Click here to Skip to main content
15,946,179 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:

I have created a desktop application in Visual Studio 2010 and used Sqlserver 2005 at back end.

Now i want to create a setup for my application. But i do not want Setup.exe option as available in Visual Studio Setup project. What i want is that all the prerequisites like .net frame work and Sql Server and my application installed in a smooth and attractive manner. e.g if sql server is not installed on the system than it should be installed and data base files attached to it.

I have read some articles but could not get a complete solution.

Any kind of help will be appreciated. Thanks in advance.


1 solution

Your idea to avoid using Setup project template which comes with VS installation makes some sense. Microsoft removed this part of the product from newer versions of Visual Studio, and, I think, for some good reasons. Microsoft is getting rid of it without replacing it with anything else. So, what to do?

My solution is using open-source WiX, the open-source installation toolset:[^],[^].

I recently made a migration to it and am very glad I did. It's not perfect too (and the whole Microsoft Installer and its API is well behind other technologies), but it is much better than anything I ever heard of so far. Actually, if you use WiX, you will understand that the tools mentioned above are actually nearly illegal (technically), they are using their proprietary project files. Only WiX provide excellent compliance with the contemporary MSBuild and related XML-based project standard, so you can use WiX projects using standard MSBuild techniques: customize it, integrate with bigger master projects or solutions, write your own extensions, if you need some, and so on.

Also, it has very good and smooth integration with Visual Studio of different versions.

Finally, one big benefit is: WiX code is non-visual. Everything is explicitly declared in XML code using some official documented XML scheme. Nothing is hidden behind the XML code files.

As to the behavior and features, many advanced features are not comprehensively documented, unfortunately. But communities already collected considerable experience and provide a lot of useful advice. So far, I was able to find solutions to all chores I practically needed. And the set of ready-to-use solutions is wider that that I found in a legacy Setup project. Some actions which required development of custom steps are already embedded in WiX. It includes adjusting Windows Firewall to your application, setting permissions of files and directories, different action depending on the project platform and target platform, and a lot more.

Share this answer
irfankhan200 22-Sep-14 7:24am    
thanks for your time and help. I am working on Wix tool set now.
Sergey Alexandrovich Kryukov 22-Sep-14 10:29am    
You are welcome.
Will you accept the answer formally (green "Accept" button)?

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900