4
votes

I developed a win forms app targeting .net 2.0. All of this is in Visual Studio 2008 sp1.

I did this because I didn't really need 3.0+ features in the app. and I didn't want the clients to have to install a gigantic framework when they could just install a semi-huge one.

Well, when I create a setup project for the app, build it, install it, it wants me to install .net 3.5. I am targeting 2.0 in both the windows app and the setup project.

Is it possible to make the setup project with only a prerequisite of 2.0 in VS 2008?

3
Out of interest, what is the size difference in the frameworks?Steve
@Steve another issue besides the size difference is the reboot. The 3.5 framework installation requires a reboot on certain systems, namely Vista. This is because the 3.5 framework includes 2.0SP1 which updates protected OS system files. If Vista is not already patched with 2.0SP1 (should be these days) it will need to reboot.JaredPar

3 Answers

12
votes

Yes. By default a setup project in VS2008 will want to include the 3.5 redistributable. You need to switch that to the 2.0 redistributable. Try the following

Your setup project should have a folder called "Detected Dependencies" when viewed in Solution Explorer. One of the values will be "Microsoft .Net Framework". Double click on that node which will open up the "Launch Conditions" page. There will be a node in the tree named ".Net Framework". Select that and hit F4 to bring up the properties window.

In the Properties window there will be a row named "Version" with the value 3.5.XXX. This is a combo box. Switch it to the 2.0.50727 value.

1
votes

Sure. Right-click on the setup project, choose Properties. In the properties window, click on the "Prerequisites" button and select whatever you like.

1
votes

From .NET 3.5 SP1 on you can also use a .NET Client Profile to deploy just those assemblies and files in the .NET Framework that are typically used for client application scenarios. This enables a smaller, faster, and simpler installation of .NET client applications.

Further information is available in this blog post.