views:

169

answers:

2

I would like the next update of our C# application to be the last one targeting the 2.0 Framework, and the following one to target framework 3.5. The application will be installed on a share on the client's server and accessed from a load of client machines which will need to have Framework 3.5 installed, hence all the users will receive the update at the same time.

I would like to get some way of pre-installing 3.5 before it is actually needed. My real reason for this, is that the framework install can take a long time and I don't like the idea of everyone being idle and the same time until the installation is complete.

What I was thinking was adding background code in our next update which checks to see if 3.5 is installed and that the DotnetFx35.exe is available and periodically offer to user the chance to install it (maybe by starting \\server\share\dotnetfx35.exe /q /norestart.)

I do not want to force an install via a group policy update as there will be machines that do not run our application and hence will not need the new Framework.

Does anyone have any experience with anything like this and/or any tips before I start experimenting?

+1  A: 

This might not be the answer you're want, but its a point worth mentioning, I've had personal experience with the framework 3.5 not installing as it should on certain client machines, and the installer app, doesn't give any feedback on errors.

If you have a lot of client machines, just brace yourself for the possibility that some of these machines will have some install compatibility issues with framework 3.5 and you'll need to check the install logs or event viewer for more information.

JL
Just ran into this problem myself. The only feedback is "Setup error", with both the bootstrapper and the full installer. Seriously, Microsoft? Setup error? My only solution was to then install SP1, which asked me if I wanted to repair or uninstall .Net 3.5 (repair installed it successfully).
MusiGenesis
For those of you interested in what I am talking about - check this http://readmystuff.wordpress.com/2009/07/21/a-lesson-in-error-handling-by-microsoft/
JL
I understand installations can fail which is part of the reason I would like to try to get it pre-installed before it is actually needed, which would give me more time to resolve issues.You say there was no feedback on errors. Did that mean you knew it failed, but did not know why, or did it look like the installation had completed ok. And if installation failed on any machines with 2.0 already installed, did it affect that installation?
sgmoore
A: 

You can have your clients install .NET 3.5 SP1 whenever they like - it is completely backward-compatible.

If it was me, I'd create a list of the client machines that are going to use the new app and just go around installing it. It would need to be done sooner or later anyway.

Daniel May
No, .net 3.5 SP1 it is _not_ 100% backwards compatible. .net 3.5 SP1 also installs .net 2.0 SP2 which contain some changes that can break existing .net 2.0 apps.
KristoferA - Huagati.com