From: Tom Baxter on
Hello all,

I've Googled this topic but I've not found a satisfactory answer. I was
hoping someone here could shed some light on this.

I understand there is a difference between the CLR version and the Framework
version. The latest Framework version is 3.5 SP1. Until recently, I thought
there was only one version of the CLR that had been released since 2005, and
that was 2.0.50727.3053, but now I'm starting to doubt that.

I'm running a machine w/.NET 3.5, SP1 installed. My confusion stems from
what appears in the User-Agent header generated by IE:

User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; WOW64; SLCC1;
..NET CLR 2.0.50727; Media Center PC 5.0; InfoPath.2; .NET CLR 3.5.30729;
..NET CLR 3.0.30618)

I was surprised to see CLR 3.5.30729 and 3.0.30618 listed in the HTTP
header. Do these versions of the CLR exist? If not, why are they listed in
the HTTP header?

When I create a Visual Studio 2008 app, targeting the 3.5 framework, a call
to "Environment.Version" returns 2.0.50727.3053 (not the 3.5 version).
Interestingly, the "clrver.exe" tool that ships with Visual Studio reports
v2.0.50727 as the only installed CLR. Additionally, if I set up an
App.config with either of these elements:

<startup>
<requiredRuntime version="v3.5.30729"/>
</startup>

<startup>
<requiredRuntime version="3.0.30618"/>
</startup>

my app fails because the required version of the CLR is not present.

So, it seems that I only have v2.0 of the CLR, yet for some reason IE is
reporting the existence of versions 3.0 and 3.5. Can someone explain the
discrepancy?

Thanks.


From: Cowboy (Gregory A. Beamer) on
My guess: Silverlight.

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

Blog:
http://feeds.feedburner.com/GregoryBeamer

*************************************************
| Think outside the box! |
*************************************************
"Tom Baxter" <tlbaxter99(a)yahoo.com> wrote in message
news:%23N9dh4AfJHA.5844(a)TK2MSFTNGP05.phx.gbl...
> Hello all,
>
> I've Googled this topic but I've not found a satisfactory answer. I was
> hoping someone here could shed some light on this.
>
> I understand there is a difference between the CLR version and the
> Framework version. The latest Framework version is 3.5 SP1. Until
> recently, I thought there was only one version of the CLR that had been
> released since 2005, and that was 2.0.50727.3053, but now I'm starting to
> doubt that.
>
> I'm running a machine w/.NET 3.5, SP1 installed. My confusion stems from
> what appears in the User-Agent header generated by IE:
>
> User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; WOW64;
> SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; InfoPath.2; .NET CLR
> 3.5.30729; .NET CLR 3.0.30618)
>
> I was surprised to see CLR 3.5.30729 and 3.0.30618 listed in the HTTP
> header. Do these versions of the CLR exist? If not, why are they listed in
> the HTTP header?
>
> When I create a Visual Studio 2008 app, targeting the 3.5 framework, a
> call to "Environment.Version" returns 2.0.50727.3053 (not the 3.5
> version). Interestingly, the "clrver.exe" tool that ships with Visual
> Studio reports v2.0.50727 as the only installed CLR. Additionally, if I
> set up an App.config with either of these elements:
>
> <startup>
> <requiredRuntime version="v3.5.30729"/>
> </startup>
>
> <startup>
> <requiredRuntime version="3.0.30618"/>
> </startup>
>
> my app fails because the required version of the CLR is not present.
>
> So, it seems that I only have v2.0 of the CLR, yet for some reason IE is
> reporting the existence of versions 3.0 and 3.5. Can someone explain the
> discrepancy?
>
> Thanks.
>
>


From: Kornél Pál on
Cowboy (Gregory A. Beamer) wrote:
> My guess: Silverlight.

As far as I know Silverlight does not advertise itself in the User-Agent
header.

There are no such things as 3.0 and 3.5 CLRs yet they advertise
themselves in User-Agent as such. Microsoft just followed the previous
naming conventions for advertising .NET Framework versions.

..NET Framework 3.0 and 3.5 are separate products but the only consist of
add-on assemblies that use the 2.0 CLR.

Korn�l
From: rich on
On Jan 22, 6:44 am, Kornél Pál <kornel...(a)newsgroup.nospam> wrote:
> Cowboy (Gregory A. Beamer) wrote:
>
> > My guess: Silverlight.
>
> As far as I know Silverlight does not advertise itself in the User-Agent
> header.
>
> There are no such things as 3.0 and 3.5 CLRs yet they advertise
> themselves in User-Agent as such. Microsoft just followed the previous
> naming conventions for advertising .NET Framework versions.
>
> .NET Framework 3.0 and 3.5 are separate products but the only consist of
> add-on assemblies that use the 2.0 CLR.
>
> Kornél

Hi guys. I work on the CLR team and can help you with this issue. I've
got a few pieces of info to share.

- The supportedRuntime and requiredRuntime elements only allow you to
pre-req CLR versions, not framework versions
- requiredRuntime works, but is deprecated. Please use
supportedRuntime instead.
- As a result, the best you can write is <supportedRuntime>2.0.50727</
supportedRuntime>
- This config file feature does not intersect with Silverlight or the
user agent string in any way
- We are aware that the lack of ability to pre-req Framework versions
is a significant limitation and are looking into that for Dev10
(current version in development)

I hope that helps.

rich
From: Cowboy (Gregory A. Beamer) on
With Silverlight 2, I would imagine it is possible they would be in the
header, as Silverlight 2 is a mini CLR that runs in the browser process.
This is the most plausible explanation for me, as there is no reason for
advertising a user agent from a browser unless the server could use it, as
there is no fundamental difference, sans Silverlight, from IE with 2.0 and
IE with 3.5 in serving pages.

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

Blog:
http://feeds.feedburner.com/GregoryBeamer

*************************************************
| Think outside the box! |
*************************************************
"Korn�l P�l" <kornelpal(a)newsgroup.nospam> wrote in message
news:uvfSBAKfJHA.3904(a)TK2MSFTNGP02.phx.gbl...
> Cowboy (Gregory A. Beamer) wrote:
>> My guess: Silverlight.
>
> As far as I know Silverlight does not advertise itself in the User-Agent
> header.
>
> There are no such things as 3.0 and 3.5 CLRs yet they advertise themselves
> in User-Agent as such. Microsoft just followed the previous naming
> conventions for advertising .NET Framework versions.
>
> .NET Framework 3.0 and 3.5 are separate products but the only consist of
> add-on assemblies that use the 2.0 CLR.
>
> Korn�l