微軟已不在支援 Windows 7 , 導致無法透過 Windows Update 更新 , 剛好需要在舊的環境上安裝 .Net Framework 4 , 透過手動方式進行安裝
以往來說很多時候不大特別會去注意 .Net Framework 的安裝 , 剛好最近遇到一個早期寫的舊程式需要在朋友的環境中使用 , 但是朋友的環視居然是 Windows 7 , 正常來說也是可以進行安裝 .Net Framework 4 的版本 , 但沒有想到居然沒有辦法安裝 , 因此只好連線查看 , 把相關手動安裝的步驟給整理一下 , 免得後續還有類似問題的時候 , 可以知道要怎麼處理。
首先我們要先找到 .Net Framework 4.8 的離線安裝程式 ( Download .NET Framework 4.8 ) , 下載離線安裝的版本來進行安裝,雖然 .Net Framework 4 後面還有 4.8.1 的更新 , 但是 Windows 7 只能使用到 4.8 的版本 , 因此這裡我們就安裝 4.8 的版本就可以了。
當我們進行安裝的時候,很不幸的會出現安裝失敗的訊息,但是這裡並沒有足夠的資訊提供給我們,因此我們選擇查看一下記錄檔

從錯誤記錄檔中可以看到是安裝程式內有程式的憑證過期 , 才導致沒有辦法安裝

因此在我們關閉安裝程式前,先去找到記錄檔中所描述的檔案,從「數位簽章」內所記錄的選項中,我們選擇「詳細資料」來做查看

接下來我們選擇檢視憑證

在這個憑證內,我們從「憑證路徑」來做查看,可以看到最上層的 「Microsoft Root Certificate Authority 2011」這個根憑證過期了,因此才會造成執行安裝會有問題。因此我們可以選擇「檢視憑證」來看一下那張憑證的狀況

接下來我們就手動將這個憑證給安裝,選擇下方「安裝憑證」

將該憑證安裝到「受信任的根憑證授權單位」下面

安裝好之後,將這些視窗都關閉掉,我們在重新查看原本這個 SetupUtility.exe 的數位憑證,就會發現顯示為正常了,看起來應該就可以來進行安裝了

但是當我們想說問題解決之後,再重新安裝的時候,沒想到居然還是發生錯誤,但比較慶幸的事情是原本有異常的程式已經可以順利執行,這次是另外一個檔案也出了問題,因此我們依循上述的方式,去找看看有問題的 netfx_Full_x64.msi,看看這次是哪個憑證出問題

於是我們查看之後,這次的錯誤訊息有點不同,他是顯示「副署無效」,因此我們就要查看下方副署的部分,來看看是甚麼樣的問題

查看起來是另外一張根憑證也不被信任,因此我們要手動將這個「Microsoft Root Certificate Authority 2010」的憑證給安裝起來

類似之前的步驟,開啟「Microsoft Root Certificate Authority 2010」這個憑證,選擇「安裝憑證」

也是一樣放到「受信任的根憑證授權單位」下面

安裝完兩張憑證,接下來應該可以了吧,果然再次執行的時候,就可以完成驗證,期待可以安裝順利囉

果然沒有讓我們白費力氣,真的可以安裝起來了
