Windows 操作系統與 .NET Framework
Windos 2000
在單位的機房裏好不easy才找到一臺安裝 Windows 2000 Server SP4 操作系統的server。這臺碩果僅存的server到本月底也要退役了。
Windows 2000 操作系統是沒有預裝不論什麽版本號的 .NET Framework 的。下圖中的 Microsoft .NET Framework 2.0 是我為了在該server上執行一些 C# 語言寫的小程序而安裝的。
Windows XP
下圖中的 Windows XP Professional SP3 操作系統是我們單位辦公用機專用的。裝機量很的大。
相同,Windows XP 操作系統也沒有預裝 .NET Framework。下圖中的 Microsoft .NET Framework 全家福也是我自己安裝的。
Windows Server 2003
Windows Server 2003 操作系統最初叫作“Windows .NET Server”。後改成“Windows .NET Server 2003”,終於被改成“Windows Server 2003”,於2003年3月28日公布。並在同年四月底上市。正如原來的名字中的 .NET 所暗示的。Microsoft .NET Framework 1.1 已經成為該操作系統的組件了。不須要另外安裝。
2005年發售的 Windows Server 2003 R2 中內置了 Microsoft .NET Framework 2.0。
除了前面提到的一臺以外,我們機房中的其它server所有都是安裝這個版本號的操作系統。
下圖的 Windows 組件向導中已經包含 Microsoft .NET Framework 2.0 了。
在加入或刪除程序中能夠看到其它版本號的 Microsoft .NET Framework:
Windows Vista
下圖中的 Windows Vista 是我購買的 Dell Inspiron 1520 本本預裝的操作系統。
能夠看出。Microsoft .NET Framework 3.0 (includes .NET 2.0) 已經成為 Vista 操作系統的組件了。
更高版本號的 .NET Framework 就要自己安裝了:
Windows 7
下圖中的 Windows 7 專業版眼下僅用來測試兼容性:
能夠看出。Windows 7 操作系統已經內置了 .NET Framework 3.5 (includes .NET 2.0 and 3.0)。
Microsoft .NET Framework 4 還須要自己安裝:
Windows 8
下圖中的 Windows 8 Consumer Preview 是我到 Microsoft 站點下載後安裝的。
能夠看出,Windows 8 操作系統默認安裝了 .NET Framework 4.5,而且 .NET Framework 3.5 (includes .NET 2.0 and 3.0)也是該操作系統的組件,可是默認沒有啟用該組件。
所下面圖中就不包含不論什麽版本號的 .NET Framework 了。
假設在 Windows 8 操作系統中執行 .NET 2.0 的程序,就會彈出下面對話框。
測試程序
讓我們寫一個很easy的程序來測試一下吧:
1 using System; 2 using System.IO; 3 4 static class Tester 5 { 6 static void Main() 7 { 8 Console.WriteLine("OS Version: " + Environment.OSVersion); 9 Console.WriteLine("CLR Version: " + Environment.Version); 10 } 11 }
該程序在各種 Windows 操作系統中的執行結果例如以下所看到的:
Windows 2000 OS Version: Microsoft Windows NT 5.0.2195 Service Pack 4 CLR Version: 2.0.50727.832 Windows XP OS Version: Microsoft Windows NT 5.1.2600 Service Pack 3 CLR Version: 2.0.50727.3625 CLR Version: 4.0.30319.239 Windows Server 2003 OS Version: Microsoft Windows NT 5.2.3790 Service Pack 2 CLR Version: 2.0.50727.3625 CLR Version: 4.0.30319.239 Windows Vista OS Version: Microsoft Windows NT 6.0.6002 Service Pack 2 CLR Version: 2.0.50727.4216 CLR Version: 4.0.30319.239 Windows 7 OS Version: Microsoft Windows NT 6.1.7601 Service Pack 1 CLR Version: 2.0.50727.5420 CLR Version: 4.0.30319.239 Windows 8 Consumer Preview OS Version: Microsoft Windows NT 6.2.8250.0 CLR Version: 2.0.50727.6111 CLR Version: 4.0.30319.17379
上述結果中的 CLR 2.0 和 CLR 4.0 是分別使用對應版本號的 C# 編譯器編譯後兩次執行的結果。
Windows 操作系統內核版本號
各 Windows 操作系統的內核版本號例如以下所看到的:
- Windows NT 5.0: Windows 2000
- Windows NT 5.1: Windows XP
- Windows NT 5.2: Windows Server 2003, Windows Server 2003 R2
- Windows NT 6.0: Windows Vista, Windows Server 2008
- Windows NT 6.1: Windows 7, Windows Server 2008 R2
- Windows NT 6.2: Windows 8
從上面能夠看出。所謂的 Windows 7、Windows 8 只是是 Windows NT 6.1、6.2。而 Windows Server 2008 R2 相對於 Windows Server 2008 來說,進行了比較大的升級。
Components and Layers .NET Framework versions
上圖來源於:MSDN: .NET Framework Versions and Dependencies。
Windows 操作系統與 .NET Framework