C#1.1 and C#2.0 compatibility

F

Flix

Could somebody please answer the following questions?

1) Can all the .Net 1.1 executables run on a PC without the .Net 1.1
runtime, but with the .Net 2.0 runtime ?
2) Is the retro-installing flawless (I mean installing the .Net runtime 1.1
after having installed the 2.0 runtime) ? Is it useful (to run 1.1 programs)
or not ?
3) A C#2.0 program can link to a (managed) .Net 1.1 dll (without
recompilation of the dll code)?
4) Is it true that all the C#1.1 projects compile (without any conversion)
when built with the .Net 2.0 csc.exe ?

Basically I ask these questions because I'm making new releases of a C# 1.1
project, and I have to decide what to do, now that the 1.1 Framework is
starting to become obsolete.

Thank you in advance for your answers.
 
J

Jon Skeet [C# MVP]

Flix said:
Could somebody please answer the following questions?

1) Can all the .Net 1.1 executables run on a PC without the .Net 1.1
runtime, but with the .Net 2.0 runtime ?

I believe so, although there are some incompatibilities between the
different versions - some of which are documenting and some of which
aren't.
2) Is the retro-installing flawless (I mean installing the .Net runtime 1.1
after having installed the 2.0 runtime) ?

Haven't done it myself, to be honest.
Is it useful (to run 1.1 programs) or not ?

Personally I think it's useful to have it, as then you'll be running
against the versions it was tested with etc. No worries about
incompatibilities.
3) A C#2.0 program can link to a (managed) .Net 1.1 dll (without
recompilation of the dll code)?
Yes.

4) Is it true that all the C#1.1 projects compile (without any conversion)
when built with the .Net 2.0 csc.exe ?

There are a very few incompatibilities in the language - in particular,
there's one issue with delegates where you *could* end up with
different behaviour but still no warnings. It's unlikely you'll run
into it though.
Basically I ask these questions because I'm making new releases of a C# 1.1
project, and I have to decide what to do, now that the 1.1 Framework is
starting to become obsolete.

I know, it's a tricky situation.
 
?

=?iso-8859-1?Q?Lasse=20V=e5gs=e6ther=20Karlsen?=

Could somebody please answer the following questions?
1) Can all the .Net 1.1 executables run on a PC without the .Net 1.1
runtime, but with the .Net 2.0 runtime ?

If you want an absolute answer then it is no. Most can run without problems,
some won't. I have 2 which won't run with only 2.0 installed.
2) Is the retro-installing flawless (I mean installing the .Net
runtime 1.1
after having installed the 2.0 runtime) ? Is it useful (to run 1.1
programs)
or not ?

I have installed 1.1 after 2.0 and apart from some smallish changes of defaults
for one IIS application it doesn't seem to be a problem. I can't guarantee
that everything will work though but it seems to work for me.
3) A C#2.0 program can link to a (managed) .Net 1.1 dll (without
recompilation of the dll code)?

Yes.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top