Which things I need to purchase to develop and distribute application to customer in .Net

applicationsdistributionlicensingmicrosoftnet

This is the first time I got one customer and I am developing one application for him in c#.net and winforms. I want to distribute .net framework with my application since customer may not have it installed so I want to give it with my application so that while installing it will see if framework is installed or not and install it accordingly.

I want to know, if I want to distribute this application to this customer as well as several other customers in future, which things or licenses I need to purchase like .net framework, visual studio etc.

You can consider that I am going to start my small software firm and going to make more of such applications and sell them to various customers.

Best Answer

The .NET framework is royalty-free, and you can package it with your application.

There are free versions of Visual Studio (called Express Editions). What they are typically missing are the ability to create Setup Packages, and an integrated Unit Test suite. Just for the Setup Packages, I suggest getting Visual Studio Professional (probably 2012 at this point). You could get away without using Microsoft's test framework because there are so many good open source unit testing frameworks like NUnit.

Some versions of Visual Studio Pro (at least in the 2010 release) came with an MSDN subscription, and some didn't. This was a big price difference. I recommend looking into it to see if you want the benefits that come with it (you get a lot of other software with an MSDN subscription).

You will probably want to get something like Resharper as well. It's a productivity plugin for Visual Studio. I recommend it, and a lot of programmers seem to swear by it.

You'll need source control, but all the common ones (SVN, Hg, Git) are free, including the Visual Studio plugins. If you worked on a bigger team, some like to use Microsoft's Team Foundation Server for source control and as a build server, but I don't think you'll need that.

Consider, you also may want to create some kind of test lab of different computers and different operating systems to test your install packages on. The biggest stumbling block is usually 32-bit vs. 64-bit targets, especially when you have 3rd party DLLs. You'll have to decide whether to create 2 setup packages (very common) or just one. Plus having XP, Vista, and Windows 7 targets would be a bonus. Perhaps you need a server with some virtual machines on it. In that case, having the MSDN subscription might pay off quickly because you'll get access to all these OS versions for development purposes.

Edit:

Microsoft also has a promotion/program called BizSpark which you should at least look into. It's for new startups. If gives you a lot of cheap stuff in your first year. It might be worth the money, depending on your situation.

Related Topic