2014年5月22日 星期四

[研究] .NET Framework 4.0、4.5、4.5.1、4.5.2、4.6.1、4.6.2 關聯

[研究] .NET Framework 4.0、4.5、4.5.1、4.5.2、4.6.1、4.6.2 關聯

2014-05-22
2016-02-16 更新4.6.1相關資訊
2016-08-05 更新4.6.2相關資訊

下載網頁 (英文網頁更新較快)
https://msdn.microsoft.com/en-us/library/5a4x27ek(v=vs.110).aspx
https://msdn.microsoft.com/zh-tw/library/5a4x27ek(v=vs.110).aspx

.NET Framework 4.x 出了好幾個版本,是否新出的就會包含舊的 4.x 呢?
( .NET Framework 4.x 並不包含 .NET 1.x、2.x 和 3.x )

.NET Framework
https://zh.wikipedia.org/wiki/.NET_Framework

.NET Framework
http://en.wikipedia.org/wiki/.NET_Framework

英文介紹多了張圖,說明各版本多了甚麼功能。

1.0、1.1、2.0、4.x 是獨立存在的版本,如果某程式需要 2.x,電腦中已經安裝 4.x 也無法跑。(這點比 Java Runtime 差很多)

3.0 和 3.5 是 2.0 版再增加些功能而成,所以 3.5.1 版安裝後會包含 2.x ~ 3.x 所有功能。

因為 3.5.1 檔案已經太大了,4.x 重新設計,包含舊版所有功能,檔案小了很多,但如果某程式需要 2.x,電腦中已經安裝 4.x 也無法跑。
圖片來源:http://en.wikipedia.org/wiki/.NET_Framework_version_history

.NET Framework 版本和相依性 (英文網頁更新較快)
https://msdn.microsoft.com/en-us/library/bb822049(v=vs.110).aspx
http://msdn.microsoft.com/zh-tw/library/bb822049(v=vs.110).aspx




圖片來源:http://www.abhishekshukla.com/wp-content/uploads/2012/02/net-framework-3_5-types-and-namespaces-poster.jpg

測試環境:Windows 7 x64 虛擬機器

基本上,此處不討論 "Web安裝程式" (線上安裝版本,online installer),或針對特殊平台 (例如 Windows RT ) 的版本。

一、從小版本開始安裝

(下圖) 安裝 .NET Framework 4.0

.NET 4.0支援
Windows 7, Windows 7 Service Pack 1, Windows Server 2003 Service Pack 2, Windows Server 2008, Windows Server 2008 R2, Windows Server 2008 R2 SP1, Windows Vista Service Pack 1, Windows XP Service Pack 3

Microsoft .NET Framework 4 (獨立安裝程式) (48.1 MB)
http://www.microsoft.com/zh-tw/download/details.aspx?id=17718

Microsoft .NET Framework 4 Full 語言套件 (x86/x64) (2.2 MB)
http://www.microsoft.com/zh-tw/download/details.aspx?id=3324

Microsoft .NET Framework 4 Client Profile (獨立安裝程式) (41.0 MB)
http://www.microsoft.com/zh-tw/download/details.aspx?id=24872

Microsoft .NET Framework 4 Client 語言套件 (x86 x64) (2.2 MB)
http://www.microsoft.com/zh-TW/download/details.aspx?id=23067

.NET 4.0 有兩種安裝版本,一種是 Full 版,一種 Client 版,Full = Client + Entended,如果要架設網站提供服務,要用前者,後者適用於用戶端,但兩者檔案大小差異不大,所以到了 4.5 版,不再提供 Client Profile 版

Full 和 Client Profile 版都各自另外有語系套件,這不是必要的套件,可能可以讓某些訊息以繁體中文顯示。


(下圖) 安裝 .NET Framework 4.0 語言套件 - 繁體中文

Microsoft .NET Framework 4.5

Microsoft .NET Framework 4.5 開始不支援 Windows XP 和 Windows 2003
Windows 8 和 Windows Server 2012 包含 .NET Framework 4.5

Microsoft .NET Framework 4.5 (Web 安裝程式) ( 982 KB)
http://www.microsoft.com/zh-tw/download/details.aspx?id=17718
公開網站好像沒有提供 獨立安裝程式,MSDN 訂閱者有,檔案名稱 mu_.net_framework_4.5_x86_x64_921021.exe,約 48 MB

Microsoft .NET Framework 4.5 語言套件 - 繁體中文 ( 3.9 MB)
http://www.microsoft.com/en-us/download/details.aspx?id=30667

(下圖) 安裝 .NET Framework 4.5
可以看到 4.0 從移除選項中消失,表示 4.5包含 4.0,但是語系套件是另外的

(下圖) 安裝 .NET Framework 4.5 語言套件 - 繁體中文



Microsoft .NET Framework 4.5.1

此版本開始多了 "開發人員套件" 版本,而且內含語系套件

Microsoft .NET Framework 4.5.1 (離線安裝程式) ( 66.8MB)
http://www.microsoft.com/zh-tw/download/details.aspx?id=40779

Microsoft .NET Framework 4.5.1 語言套件 (離線安裝程式) ( 5.6 MB)

http://www.microsoft.com/zh-tw/download/details.aspx?id=40751

.NET Framework 4.5.1 開發人員套件 ( 198.6 MB)
http://www.microsoft.com/zh-TW/download/details.aspx?id=40772

(下圖) 安裝 .NET Framework 4.5.1
可以看到 4.5 從移除選項中消失,表示 4.5.1包含 4.5,但是語系套件是另外的

 (下圖) 安裝 .NET Framework 4.5.1 語言套件 - 繁體中文

(下圖) 安裝 .NET Framework 4.5.1 開發人員套件
開發人員套件 的 繁體中文語系套件 不需要另外安裝


Microsoft .NET Framework 4.5.2

Microsoft .NET Framework 4.5.2 (離線安裝程式)

http://www.microsoft.com/zh-TW/download/details.aspx?id=42642

Microsoft .NET Framework 4.5.2 語言套件 (離線安裝程式) ( 6.4 MB)
http://www.microsoft.com/zh-TW/download/details.aspx?id=42641

Microsoft .NET Framework 4.5.2 開發人員套件(離線安裝程式) ( 328.3 MB)
http://www.microsoft.com/zh-TW/download/details.aspx?id=42637


(下圖) 安裝 .NET Framework 4.5.2

(下圖) 安裝 .NET Framework 4.5.2 開發人員套件 ( 328.3 MB)
可以發現 4.5.1 版的 多目標套件 (Multi-Targeting Pack ) 仍在,表示兩者不同


 (下圖) 安裝 .NET Framework 4.5.2 語言套件 - 繁體中文
這次把語系排後面安裝,結果發現 開發人員套件已經包含 語系套件,不需要另外安裝了



Microsoft .NET Framework 4.6

Windows.NET Framework 4.6 離線安裝程式
2015/10/15
https://www.microsoft.com/zh-tw/download/details.aspx?id=48137

Microsoft .NET Framework 4.6 語言套件 (離線安裝程式)
2015/10/15

https://www.microsoft.com/zh-TW/download/details.aspx?id=48135

Microsoft .NET Framework 4.6 目標套件及語言套件
2015/10/15

https://www.microsoft.com/zh-tw/download/details.aspx?id=48136


Microsoft .NET Framework 4.6.1

Windows.NET Framework 4.6.1 離線安裝程式
2015/11/17
https://support.microsoft.com/zh-tw/kb/3102436

Microsoft .NET Framework 4.6.1 Developer Pack
11/17/2015
https://www.microsoft.com/en-us/download/details.aspx?id=49978

NET Framework 4.6.1 Language Pack 語言套件 (離線安裝程式)
11/17/2015
https://www.microsoft.com/en-us/download/details.aspx?id=49977

Microsoft .NET Framework 4.6.2

2016-08-03
https://www.visualstudio.com/downloads/download-visual-studio-vs

  • Cryptography enhancements, including support for X509 certificates containing FIS 186-3 DSA, support for persisted-key symmetric encryption, SignedXml support for SHA-2 hashing, and increased clarity for inputs to ECDiffieHellman key derivation routines.
  • For Windows Presentation Foundation (WPF) apps, soft keyboard support and per-monitor DPI.
  • ClickOnce support for the TLS 1.1 and TLS 1.2 protocols.
  • Support for converting Windows Forms and WPF apps to UWP apps.



二、從大版本開始安裝

快照還原到沒安裝任何 .NET 4.x 環境

(下圖) 安裝 .NET Framework 4.5.2 開發人員套件 ( 328.3 MB)


(下圖) 安裝 .NET Framework 4.5.1 開發人員套件 ( 198.6 MB)


(下圖) 安裝 .NET Framework 4.5
拒絕安裝了



(下圖) Windows 10 Enterprise 1511 (x64) 上安裝 .NET Framework 4.6.1失敗,說已經安裝了

(下圖) Windows 10 Enterprise 1511 (x64) 上檢查 "開啟或關閉Windows功能",發現 .NET Framework 4.6 Advanced Services 的 WCF服務已經安裝了

(下圖2張) Windows Server 2012 R2 (x64) 上安裝 .NET Framework 4.6.1 後,檢查 "解除安裝或變更程式沒有看到 .NET 4.6.1,"伺服器管理員" 看到 4.5安裝訊息 (但這是已經預先安裝了)

(下圖) Windows Server 2012 R2 (x64) 剛安裝完成,就已經預先安裝了 .NET 4.5

(下圖4張) Windows 7 x64 依序安裝 .NET Framewrok 4.6.1(第1張)、Language Pack(第2張)、Developer Pack and Language Packs(第3張)、.NET Framewrok 4.5.2(第4張)、4.5.2 Developer Pack (第5張) 後。

由此可知,基本的.NET Framework 4.6.x 安裝後,舊版 .NET 4.5.x 會被拒絕安裝,但舊版 Developer Pack 不會被拒絕安裝。





(下圖3張) 乾淨 Windows 7 x64 安裝 .NET Framewrok 4.5.2 Developer Pack (第1張),由結果知道它包含了 .NET Framework、Language Pack、Targeting Pack 。

再安裝 .NET Framewrok 4.6.1 Developer Pack (第2張),由結果知道它會把基本的 .NET Framework 4.5.2 換成 4.6.1,但 4.6.1的 Developer Pack 不像 4.5.2 包含 Language Pack,這部分沒有更新。

再安裝 .NET Framewrok 4.6.1 Language Pack (第3張),4.5.2語言套件消失,更新出現4.6.1語言套件。



(三) 結論

對於一般人,如果需要 .NET 4.x,直接安裝 4.6.1 和語系套件即可

Microsoft .NET Framework 4.6.1 (離線安裝程式) (64.5 MB)
https://support.microsoft.com/zh-tw/kb/3102436
(適用於 Windows Vista SP2、Windows 7 SP1、Windows 8、Windows 8.1、Windows Server 2008 SP2、Windows Server 2008 R2 SP1、Windows Server 2012 和 Windows Server 2012 R2)

NET Framework 4.6.1 Language Pack 語言套件 (離線安裝程式)(5.2 MB)
11/17/2015
https://www.microsoft.com/en-us/download/details.aspx?id=49977


對於程式開發者

Microsoft .NET Framework 4.6.1 Developer Pack 開發人員套件與語言套件
11/17/2015
https://www.microsoft.com/en-us/download/details.aspx?id=49978
NDP461-DevPack-KB3105179-CHT.exe (13.0 MB)
NDP461-DevPack-KB3105179-ENU.exe (88.2 MB)

.NET Framework 4.5.2 開發人員套件 (328.3 MB)
http://www.microsoft.com/zh-TW/download/details.aspx?id=42637

.NET Framework 4.5.1 開發人員套件 ( 198.6 MB)
http://www.microsoft.com/zh-TW/download/details.aspx?id=40772

PS:Windows XP/2003 用戶只能安裝到 .NET Framework 4.0 版

(下圖) Windows 10有關 .NET Framework 的畫面


(完)

PS:
(下圖) NET Framework 3.5.1 with Service Pack 1 在 Windows XP 安裝情況,它包含了 .NET 2.0 和 3.0 版


(下圖) Windows Vista 本身提供安裝 NET Framework 3.0,不需要另外下載


(下圖) Windows 7 本身提供安裝 NET Framework 3.5.1 with Service Pack 1,不需要另外下載


(下圖) Windows 8.1 本身提供安裝 NET Framework 3.5.1 with Service Pack 1 和 .NET 3.5,不需要另外下載

(下圖) Windows Server 2008 x64 本身提供安裝 NET Framework 3.0,不需要另外下載

(下圖) Windows Server 2008 R2 本身提供安裝 NET Framework 3.5.1 with Service Pack 1,不需要另外下載

(下圖) Windows Server 2012 本身提供安裝 NET Framework 3.5.1 with Service Pack 1 和 .NET 4.5,不需要另外下載

(下圖) Windows Server 2012 R2 本身提供安裝 NET Framework 3.5.1 with Service Pack 1 和 .NET 4.5,不需要另外下載

(下圖) Windows 10 本身提供安裝 NET Framework 3.5.1 with Service Pack 1 和 .NET 4.6,不需要另外下載

(完)

[研究] 常用 Microsoft .NET Framework 各版本下載網址列表
http://shaurong.blogspot.com/2015/09/microsoft-net-framework.html

[研究] .NET Framework 4.0、4.5、4.5.1、4.5.2 關聯研究
http://shaurong.blogspot.tw/2014/05/net-framework-4045451452.html

.NET Framework 版本和相依性
http://msdn.microsoft.com/library/bb822049.aspx

.NET Framework SDKs and Targeting Packs for Visual Studio 2012
http://msdn.microsoft.com/en-us/library/hh487283.aspx

Download .NET for  Desktop, Server & Development   Microsoft .NET Framework
http://www.microsoft.com/net/downloads

[研究] .NET Framework 3.5 安裝方法 ( on Windows Server 2012 R2)
http://shaurong.blogspot.com/2014/12/net-framework-35-on-windows-server-2012.html

15 則留言:

  1. 謝謝您 讓我省了很多時間驗證 非常專業!

    回覆刪除
  2. 最近剛重灌成 Windows 7,想說「程式和功能」裡已經看到有安裝 .NET Framework 4.5.1 了,怎麼出現一大堆的「.NET Framework 3.5.1 安全性更新」。現在才知道 Windows 7 有內建 .NET Framework 3.5.1,所以這些安全性更新是需要安裝。感謝詳細的說明!

    回覆刪除
  3. > (下圖) Windows Server 2018 R2 本身提供安裝 NET Framework 3.5.1 with Service Pack 1,不需要另外下載

    應該是 2008 R2 才對

    回覆刪除
  4. 不喜歡看MSDN,因為MS永遠也不說清楚到底新版有沒有包含舊版?
    http://msdn.microsoft.com/zh-tw/library/5a4x27ek(v=vs.110).aspx
    版大說得比較清楚,謝謝!

    回覆刪除
  5. .NET Framework 4.6.1
    https://www.microsoft.com/zh-tw/download/details.aspx?id=49982
    https://www.microsoft.com/zh-tw/download/details.aspx?id=49977

    回覆刪除
  6. WIN7 64 更新到最新,只能安裝到4.6.1,4.6.2一直安裝失敗,一個顯示用離線安裝,離線安裝又顯示不支援此系統,請問有解嗎?

    回覆刪除
    回覆
    1. Windows 7 上可以安裝 .NET 4.6.2,您的 Windows 7 有安裝 SP1 ? 您安裝的檔案名稱是甚麼 ? 檔案大小 ?

      [研究] .NET Framework 4.6.2 安裝 (Windows 7/ 2012 R2 )
      http://shaurong.blogspot.tw/2016/08/net-framework-462-windows-2012-r2.html

      刪除
    2. 離線跟線上都不能,有安裝SP1,檔案跟您4.6.2安裝的版本一樣,我是幫人家灌灌不起來,自己的電腦卻可以,64位元的。

      刪除
    3. 把防毒軟體關閉或先移除看看,或在安裝程式上按下滑鼠右鍵,用系統管理員身分安裝看看

      刪除
    4. 好的我再試試看喔~謝謝。

      刪除
  7. 您好,請問4.5.2 Developer Pack可以裝到Win7 32 SP1上面嗎?
    因為我4.5.2可以安裝,但是4.5.2 Developer Pack會出現"無法指出的錯誤"
    但是同一個安裝檔在Win7 64 SP1可以安裝,所以想請問是不是只能裝在64上面?

    回覆刪除
    回覆
    1. Microsoft .NET Framework 4.5.2 Developer Pack
      https://www.microsoft.com/en-us/download/details.aspx?id=42637
      根據 System Requirements,支援 Windows 7 with SP1 x86 和 x64

      刪除
    2. 您好,我就是看到應該有支援才抓下來裝的,但還是不行, XD
      最後我重新弄了一個乾淨的VM,終於可以順利安裝了,感謝~~

      刪除