views:

651

answers:

6

Before I start developing a desktop application, I was wondering how large the installer will turn out to be if I build it in .NET?

Now .NET probably is 5 years old. Do we still have to include the run time with the application? Or can we assume that most user will have it installed on their system? Does Vista ships with .NET pre installed? Lastly can we safely assume most XP users already have CLR installed on their system?

+2  A: 

You don't need to include the runtime, the installer detects if it is present at the user's machine and asks to install if not. Nowadays it is safe to assume most XP users have the CLR.

Otávio Décio
+1  A: 

It depends on how you want to distribute the application. If you're putting it on a CD, it makes sense to ship the redistributable along. Otherwise, if you are distributing it over the Web, .NET Client profile is just 25 megabytes. You can configure your setup to download it if it's not available.

Mehrdad Afshari
+1  A: 

Check out these links:

.NET Framework Client Profile Deployment Guide

SmallestDotNet.com

Is getting easier...

JAG
A: 

.NET was included in Service Pack 2 for XP, in 2004 or so..so I would say it's OK to assume that most people have it by now.

rodbv
+2  A: 

Check out Clickonce deployment. Really nice distribution system if you ask me.

I've been using ClickOnce for a year now and it has served me well. You can specify the .NET version necessary and it will automatically download then install the proper version from Microsoft if it is not already installed. The same is true of libraries like DirectX. Pushing out updates is trivial.
DavGarcia
+1  A: 

Its easy to determine if the .NET version you're targeting is installed and, if its not, instruct users on where to download it. I'm not a fan of redist-ing the installer bootstrap; its something a hacker would do. Let the user get it directly from the source.

Vista ships with 3.5. XP SP2 ships with 2.0 XP SP2 is required for .NET 2.0, but .NET is never installed by default for XP systems; its always optional. That's pretty much the minimum spec for any MS desktop system; if they are running XP sp1 or earlier I'd avoid them, unless you have specific requirements (embedded systems, dumb/stubborn user base, etc).

edit: I could have sworn SP2 came with .NET 2.0, but I can't find any definitive information about this.

Will
It's new to me and I don't think it's true that Win XP SP2 ships with any version of the .NET Framework. Do you have a reference where that is stated?
0xA3
My memory is probably wrong. I looked but couldn't find anything about it; edited to show this. Sorry if this screwed anybody up.
Will
There was a recent upgrade to XP SP2 in our workplace, and I can confirm that .NET 2.0 did not come with the upgrade, it had to be installed separately
Russ Cam
SP2 does not come with .NET but I think it's available in the CD.
Mehrdad Afshari