side-by-side hell

  • Thread starter Thread starter Jefferson Liu
  • Start date Start date
J

Jefferson Liu

i installed 2 .net frameworks on my system, 1.1 and 2.0.
i think that probly most of you do the same thing.
this is not a big problem now, and many think this is a
great escape of the dll hell.
but sometimes i think this is like to run win9x, win2k, winxp, winvista...
on a single computer.
i heard that ms is doing something like ZEN, i wonder if they
think that everybody will need it someday...
 
Don't worry, be happy!

Having .NET framework 1.0, 1.1, 2.0, ...
Is more like having word 6, word 97, word 12 on the same computer.
As far as I can see I couldn't foresee any trouble.

But stay sleepless over that if that pleases you!

--
Regards,
Lloyd Dupont

NovaMind development team
NovaMind Software
Mind Mapping Software
<www.nova-mind.com>
 
Jefferson Liu,
As you suggest .NET was designed with side-by-side in mind, which means you
can have multiple versions of the Framework installed at one time. Each
respective app will use their respective version of the Framework. .NET was
also designed with a certain amount of compatibility across versions.

http://msdn.microsoft.com/library/d...pguide/html/cpconside-by-sideexecutiontop.asp


Which means that .NET 2.0 will run most .NET 1.1 & 1.0 applications without
any problems.

http://msdn2.microsoft.com/en-us/library/ms228009.aspx

In fact most .NET 1.0 & 1.1 apps will/should run under the .NET 2.0 64-bit
edition!

http://blogs.msdn.com/joshwil/archive/2005/05/06/415191.aspx

However due to meta file changes (Generics & such) .NET 1.0 & 1.1 cannot run
..NET 2.0 assemblies.


With appropriate lines you your app.config/web.config you can have .NET 1.0
run most .NET 1.1 applications. While .NET 1.1 will run most .NET 1.0
applications without change.


In other words if your client installs .NET 2.0, they might be able to
uninstall .NET 1.1 & 1.0...

The general problem with running an app on different versions of the
framework are the "Breaking changes".

By .NET application I mean which version of the framework the program was
compiled against. VS 2002 compiles against .NET 1.0, VS 2003 is .NET 1.1,
while VS 2005 is .NET 2.0. I would expect on development machines that you
have the respective versions of the framework installed!

--
Hope this helps
Jay [MVP - Outlook]
..NET Application Architect, Enthusiast, & Evangelist
T.S. Bradley - http://www.tsbradley.net


|i installed 2 .net frameworks on my system, 1.1 and 2.0.
| i think that probly most of you do the same thing.
| this is not a big problem now, and many think this is a
| great escape of the dll hell.
| but sometimes i think this is like to run win9x, win2k, winxp, winvista...
| on a single computer.
| i heard that ms is doing something like ZEN, i wonder if they
| think that everybody will need it someday...
|
|
|
|
|
 
I do not see this as hell. My reasoning:

1. Having different versions of the Framework stops you from munging your VS
products.

2. While you cannot run a 1.1 app domain that uses a 2.0 app domain without
an interface (Remoting/web service/hand built), you can run the older in the
newer without recompiling the older. This is not true in reverse, however.

It uses more disk space, which may be a problem in some instances, but disk
space is cheap these days.

--
Gregory A. Beamer
MVP; MCP: +I, SE, SD, DBA

***************************
Think Outside the Box!
***************************
 
Jefferson said:
i installed 2 .net frameworks on my system, 1.1 and 2.0.
i think that probly most of you do the same thing.
this is not a big problem now, and many think this is a
great escape of the dll hell.
but sometimes i think this is like to run win9x, win2k, winxp,
winvista... on a single computer.
i heard that ms is doing something like ZEN, i wonder if they
think that everybody will need it someday...

The rationale is that it is far better to run software under the
environment where it was designed to run rather than forcing people to
port the code, or to write some kind of emulation or 'bridging'
software. I think that is a sensible idea. The different versions of
..NET are isolated from each other, so there should be no problems with
the wrong code being loaded.

I don't see that there is any 'side-by-side hell' because different
versions are designed to run side-by-side with no side effects. As to
whether it's like having different versions of Windows on your machine,
well, the footprint is far smaller than an OS (although, still not
insignificant), but unlike Windows (which will work side-by-side, but
that is not the main design feature), .NET has been specifically
designed to run side-by-side.

Richard
 
Back
Top