>How do see which version of the framework any particular
program/assembly is using?
It'll be in the metadata, you can use ILDASM or reflection. Of course,
it's not necessary if you already have the correct runtime installed.
And I'm guessing from the replies, that apps created with 1.0 or 1.1
can't make use of 2.0? 2.0 isn't very backwards compatible?
Actually, they're very backwards compatible, but there *are* breaking
changes. If you're running an assembly written in a previous version
that you didn't write, however, you have no real way of knowing how
well it's going to work in a newer runtime. You're really better off
keeping side-by-side versions of the runtimes, just in case. And no, I
don't think it's either clutter *or* wasted space. I view each version
of the runtime as a necessary OS component, just as one might view the
latest patch from Microsoft to be a necessary OS component. Sure, it's
not 100% necessary if you've locked your box down properly, but are you
really willing to take that chance? Better to have the patch. Better to
have the different versions of the .NET runtime.
For more info on breaking changes see here:
http://www.gotdotnet.com/team/changeinfo/default.aspx
and here:
http://msdn.microsoft.com/netframewo...s/default.aspx