Condividi tramite


Come determinare le versioni di .NET Framework installate (it-IT)

Questo argomento è un how to.
Si prega di mantenerlo chiaro e semplice per quanto possibile. Evitare discussioni speculative, come pure un esame in profondità dei meccanismi sottostanti o delle tecnologie correlate.

Introduzione

E' possibile installare ed eseguire molteplici versioni  di .NET Framework su computer ed ogni versione può essere installata in qualsiasi ordine.
A partire da Windows XP, il sistema operativo è provvisto di una versione di .NET Framework installata e pronta per l'uso; l'utente può installare una versione più recente per ottenere tutti i vantaggi disponibili con le nuove librerie di classi e spazi dei nomi forniti dalle versioni più recenti di .NET Framework.

Torna all'inizio

La cartella Microsoft.NET\Framework

Ogni versione di .NET Framework può essere installata side-by-side ed i files di ogni versione saranno installati in una sotto-cartella della cartella principale di Windows, identificata dalla variabile di ambiente %WINDIR%. Per vedere quali versioni di .NET Framework sono installate, cercare la cartella Microsoft.NET\Framework all'interno della cartella %WINDIR% (dovrebbe essere presente anche la cartella Framework64 se si sta utilizzando un sistema operativo a 64 bit, che può avere installate la versione a 32 bit o a 64 bit o entrambe): ogni versione di .NET Framework ha una cartella e le prime due cifre del nome della cartella identificano la versione di .NET Framework; ad esempio: v1.1.4322 per .NET Framework 1.1, v2.0.50727 per .NET Framework 2.0, v3.5 per .NET Framework 3.5 e così via.
La Figura 1 raffigura le cartelle contenenti i files per le molteplici versioni di .NET Framework installate su un computer sul quale è in esecuzione Windows 7 Ultimate x64 Service Pack 1.

Figura 1: cartelle per specifiche versioni di .NET Framework.

Torna all'inizio

Chiavi del Registry

Le informazioni relative all'installazione di .NET Framework (insieme alle informazioni riguardanti lo stato dei Service Packs installati) sono memorizzate nel Registry di Windows nella chiave HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP. La Figura 2 raffigura le chiavi del Registry per le molteplici versioni di .NET Framework installate su un computer sul quale è in esecuzione Windows 7 Ultimate x64 Service Pack 1.

Figura 2: chiavi del Registry per specifiche versioni di .NET Framework.

La Tabella 1 fornisce un elenco dei valori memorizzati in base ad ogni versione di .NET Framework installata.

Versione di .NET Framework Livello di Service Pack Nome della chiave del Registry Valore
4 - Client Versione originale HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client Nome: Install, Tipo: REG_DWORD, Dati: 1
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client Nome: Version, Tipo: REG_SZ, Dati: 4.0.30319.0
4 - Completo Versione originale HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full Nome: Install, Tipo: REG_DWORD, Dati: 1
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full Nome: Version, Tipo: REG_SZ, Dati: 4.0.30319.0
3.5 Versione originale HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5 Nome: Install, Tipo: REG_DWORD, Dati: 1
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5 Nome: SP, Tipo: REG_DWORD, Dati: 0
3.5 Service Pack 1 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5 Nome: Install, Tipo: REG_DWORD, Dati: 1
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5 Nome: SP, Tipo: REG_DWORD, Dati: 1
3.0 Versione Originale Seguire la guida per la distribuzione e l'individuazione nel documento "Microsoft .NET Framework 3.0 Deployment Guide" nella MSDN Library
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0 Nome: SP, Tipo: REG_DWORD, Dati: 0
3.0 Service Pack 1 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0 Nome: Install, Tipo: REG_DWORD, Dati: 1
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0 Nome: SP, Tipo: REG_DWORD, Dati: 1
3.0 Service Pack 2 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0 Nome: Install, Tipo: REG_DWORD, Dati: 1
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0 Nome: SP, Tipo: REG_DWORD, Dati: 2
2.0 Versione originale HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 Nome: Install, Tipo: REG_DWORD, Dati: 1
HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 Nome: SP, Tipo: REG_DWORD, Dati: 0
2.0 Service Pack 1 HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 Nome: Install, Tipo: REG_DWORD, Dati: 1
HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 Nome: SP, Tipo: REG_DWORD, Dati: 1
2.0 Service Pack 2 HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 Nome: Install, Tipo: REG_DWORD, Dati: 1
HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 Nome: SP, Tipo: REG_DWORD, Dati: 2
1.1 (su sistemi operativi a 32 bit) Versione originale HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322 Nome: Install, Tipo: REG_DWORD, Dati: 1
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322 Name: SP, Type: REG_DWORD, Data: 0
1.1 (su sistemi operativi a 32 bit) Service Pack 1 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322 Nome: Install, Tipo: REG_DWORD, Dati: 1
1.1 (su sistemi operativi a 64 bit) Versione originale HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322 Nome: Install, Tipo: REG_DWORD, Dati: 1
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322 Nome: SP, Tipo: REG_DWORD, Dati: 0
1.1 (su sistemi operativi a 64 bit) Service Pack 1 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322 Nome: Install, Tipo: REG_DWORD, Dati: 1
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322 Nome: SP, Tipo: REG_DWORD, Dati: 1
1.0 (sulle piattaforme supportate, eccetto Windows XP Media Center e Tablet PC) Versione originale HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{78705f0d-e8db-4b2d-8193-982bdda15ecd} Nome: Version, Tipo: REG_SZ, Dati: 1.0.3705.0
1.0 (sulle piattaforme supportate, eccetto Windows XP Media Center e Tablet PC) Service Pack 1 HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{78705f0d-e8db-4b2d-8193-982bdda15ecd} Nome: Version, Tipo: REG_SZ, Dati: 1.0.3705.1
1.0 (sulle piattaforme supportate, eccetto Windows XP Media Center e Tablet PC) Service Pack 2 HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{78705f0d-e8db-4b2d-8193-982bdda15ecd} Nome: Version, Tipo: REG_SZ, Dati: 1.0.3705.2
1.0 (sulle piattaforme supportate, eccetto Windows XP Media Center e Tablet PC) Service Pack 3 HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{78705f0d-e8db-4b2d-8193-982bdda15ecd} Nome: Version, Tipo: REG_SZ, Dati: 1.0.3705.3
1.0 (distribuito con Windows XP Media Center 2002/2004 e Tablet PC 2004) Service Pack 2 HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{FDC11A6F-17D1-48f9-9EA3-9051954BAA24} Nome: Version, Tipo: REG_SZ, Dati: 1.0.3705.2
1.0 (distribuito con Windows XP Media Center 2005 e Tablet PC 2005) Service Pack 3 HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{FDC11A6F-17D1-48f9-9EA3-9051954BAA24} Nome: Version, Tipo: REG_SZ, Dati: 1.0.3705.3

Table 1: valori delle chiavi del Registry per specifiche versioni di .NET Framework.

Per individuare la presenza di una specifica versione di .NET Framework indipendemente dal livello di Service Pack level o per individuare un livello di Service Pack o un successivo livello di Service Pack della medesima versione di .NET Framework, utilizzare le informazioni sul Registry elencate in Tabella 2.

Versione di .NET Framework Livello di Service Pack Nome della chiave del Registry Valore
4 - Client Qualunque versione HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client Install = 1
4 - Completo Qualunque versione HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full Install = 1
3.5 Qualunque versione HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5 Install = 1
3.5 Service Pack 1 o superiore HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5 SP >= 1
3.0 Qualunque versione HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0 Install = 1
3.0 Service Pack 1 o superiore HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0 SP >= 1
3.0 Service Pack 2 superiore HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0 SP >= 2
2.0 Qualunque versione HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 Install = 1
2.0 Service Pack 1 o superiore HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 SP >= 1
2.0 Service Pack 2 o superiore HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 SP >= 2
1.1 Qualunque versione HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322 Install = 1
1.1 Service Pack 1 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322 SP >= 1
1.0 Qualunque versione HKEY_LOCAL_MACHINE\Software\Microsoft\.NET Framework\Policy\v1.0 Nome: 3705, Tipo: REG_SZ, esiste
1.0 (sulle piattaforme supportate, eccetto Windows XP Media Center e Tablet PC) Service Pack 1 o superiore HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{78705f0d-e8db-4b2d-8193-982bdda15ecd} Version >= 1.0.3705.1
1.0 (sulle piattaforme supportate, eccetto Windows XP Media Center e Tablet PC) Service Pack 2 o superiore HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{78705f0d-e8db-4b2d-8193-982bdda15ecd} Version >= 1.0.3705.2
1.0 (sulle piattaforme supportate, eccetto Windows XP Media Center e Tablet PC) Service Pack 3 o superiore HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{78705f0d-e8db-4b2d-8193-982bdda15ecd} Version >= 1.0.3705.3
1.0 (distribuito con Windows XP Media Center 2002/2004 e Tablet PC 2004) Service Pack 2 o superiore HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{FDC11A6F-17D1-48f9-9EA3-9051954BAA24} Version >= 1.0.3705.2
1.0 (distribuito con Windows XP Media Center 2005 e Tablet PC 2005) Service Pack 3 o superiore HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{FDC11A6F-17D1-48f9-9EA3-9051954BAA24} Version >= 1.0.3705.2

Tabella 2: valori delle chiavi del Registry per specifiche versioni di .NET Framework indipendentemente dal livello di Service Pack.

Torna all'inizio

Determinare la versione di .NET Framework via codice

La versione di .NET Framework può essere determinata scrivendo del codice che interroga la versione del Common Language Runtime (CLR) utilizzando la proprietà Version della classe System.Environment, come nel seguente frammento di codice C#

using System;

class Sample
{
    public static void Main()
    {
      Console.WriteLine();
      Console.WriteLine("Version: {0}", Environment.Version.ToString());
    }
}

Se si compila questo programma con .NET Framework 3.5, il valore di questa proprietà sarà "2.0.50727.3603".

Torna all'inizio

Lo strumento CLRVER

Lo strumento CLR Version (Clrver.exe) elenca tutte le versioni del Common Language Runtime (CLR) installate sul computer. Questo strumento è installato automaticamente con Visual Studio e con Windows SDK e dev'essere eseguito dal prompt dei comandi di Visual Studio o da quello del Windows SDK.
Al prompt dei comandi digitare quanto segue

clrver [option]

dove [option] può essere -all per visualizzare tutti i processi managed e la versione del CLR che utilizzano, -? per visualizzare la sintassi del comando e le opzioni per lo strumento o pid per visualizzare la(e) versione(i) del CLR utilizzata dai processi che hanno l'identificativo di processo specificato. Eseguito senza opzioni, lo strumento visualizza tutte le versioni del CLR installate.

Torna all'inizio


Altre lingue

Questo articolo è disponibile anche nelle seguenti lingue:

English (en-US)