文章編號: 908077 - 上次校閱: 2007年12月3日 - 版次: 1.6

如何排除 Microsoft .NET Framework 2.0 安裝問題

系統提示本文適用於您使用的作業系統之外的作業系統。與您不相關的文章內容已停用。
重要 本文包含有關如何修改登錄的相關資訊。修改登錄之前,請務必做好備份工作,並瞭解如何在發生問題時還原登錄。如需有關如何備份、還原和修改登錄的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
256986? (http://support.microsoft.com/kb/256986/ ) Microsoft Windows 登錄說明

在此頁中

全部展開 | 全部摺疊

結論

您可以使用本文中的方法,排除 Microsoft .NET Framework 2.0 版的安裝問題。本文將討論 Microsoft Windows Server 2003、Windows 2000 Service Pack 3 (SP3) 或 Windows XP Service Pack 2 (SP2) 的安裝程序。本文所討論的問題包含註冊 Microsoft Windows Installer,以及修復、移除和重新安裝 .NET Framework。如果使用這些方法,您應該要熟悉 .NET Framework 2.0、登錄編輯程式和 Windows Installer。此外,其中一個方法也需要變更電腦的登錄。

簡介

本文將逐步告訴您,如何排除安裝 .NET Framework 2.0 時可能會遇到的問題。

當 Microsoft Windows Installer 以錯誤的方式在 Windows 登錄中註冊時,.NET Framework 2.0 安裝程式就無法存取某些 Windows Installer 元件。本文將告訴您,如何移除註冊後再重新註冊 Windows Installer 以解決這個問題。

使用「控制台」中的「新增/移除程式」工具,不見得每次都能完整地移除 .NET Framework 2.0。本文也將告訴您,如何手動從電腦中移除然後再重新安裝 .NET Framework 2.0,或是修復 .NET Framework 2.0 以解決這個問題。

所需項目

下面清單列出了建議使用的硬體、軟體、網路基礎結構,以及所需安裝的 Service Pack:注意 如果要排除 .NET Framework 2.0 的安裝問題,您必須使用執行 .NET Framework 2.0 之電腦上 Local Administrators 群組中的帳戶。

本文假設您已熟悉下列主題:
  • Microsoft .NET Framework 2.0
  • 登錄編輯程式
  • Windows Installer

移除註冊後再重新註冊 Windows Installer

這個動作會更正大部分的問題,也不會影響任何目前使用 Windows Installer 的已安裝程式。
  1. 移除註冊 Windows Installer。如果要執行這項操作,請依序按一下 [開始][執行],然後在 [開啟] 方塊中輸入 msiexec /unregister,再按一下 [確定]
  2. 重新註冊 Windows Installer。如果要執行這項操作,請依序按一下 [開始][執行],然後在 [開啟] 方塊中輸入 msiexec /regserver,再按一下 [確定]

修復 .NET Framework 2.0

以下是修復 .NET Framework 的三種方法。

對 Windows Installer 快取檔使用 Repair 命令

如果要使用 Windows Installer 快取檔修復 .NET Framework 2.0,請依照下列步驟執行:
  1. 按一下 [開始],再按一下 [執行],在 [開啟] 方塊中輸入 installer,然後按一下 [確定]
  2. 在 Windows Installer 的 [檢視] 功能表上按一下 [詳細資料],然後用滑鼠右鍵按一下 [名稱] 欄位標頭,再按 [註解]
  3. 用滑鼠右鍵按一下具有 [Microsoft .NET Framework 2.0 RTL x86 enu] 註解的快取 Windows Installer 檔案,然後按一下 [修復]
  4. 修復程序完成之後,結束 Windows Installer。

在命令提示字元執行 .NET Framework 2.0 可轉散發套件

如果要使用命令提示字元修復 .NET Framework 2.0,請依照下列步驟執行:
  1. 找出您用來安裝 .NET Framework 2.0 的 Dotnetfx.exe 檔案。如果要執行這項操作,請使用下列其中一個方法:
    • 如果您從 CD 或 DVD 安裝 .NET Framework 2.0,請將安裝光碟插入 CD 或 DVD 光碟機。
    • 如果您從硬碟安裝 .NET Framework 2.0,請將 .NET Framework 2.0 安裝程式下載至硬碟。
    • 如果您從網路磁碟機安裝 .NET Framework 2.0,請重新連線至該網路磁碟機。
  2. 按一下 [開始],再按一下 [執行],在 [開啟] 方塊中輸入 cmd,然後按一下 [確定]
  3. 在命令提示字元執行下列命令:
    %InstallationPath%\dotnetfx.exe /t:%temp% /c:"msiexec.exe /fvecms %temp%\netfx.msi"
注意%InstallationPath% 是您在步驟 1 中所找到 Dotnetfx.exe 檔案路徑的預留位置。

手動移除後再重新安裝 .NET Framework 2.0

警告 如果您使用「登錄編輯程式」或其他方法不當地修改登錄,可能會發生嚴重問題。您可能需要重新安裝作業系統,才能解決這些問題。Microsoft 不保證可以解決這些問題。請自行承擔修改登錄的一切風險。

重要 這些步驟可能會增加您電腦的安全性風險。這些步驟可能也會使您的電腦或網路更容易遭受惡意使用者或惡意軟體 (例如病毒) 的攻擊。我們建議以本文所描述的程序來啟用程式,以其原先的設計進行操作,或者執行特定的程式功能。在進行這些變更之前,建議您先評估在特定環境中使用此程序的相關風險。如果您決定執行此程序,請採用任何其他的適當步驟,以協助保護您的系統。建議您只有在真正需要此程序時,才使用本程序。
  1. 從 Windows Installer 快取移除 .NET Framework 2.0:
    1. 按一下 [開始],再按一下 [執行],在 [開啟] 方塊中輸入 installer,然後按一下 [確定]
    2. 在 Windows Installer 的 [檢視] 功能表上,按一下 [詳細資料]
    3. 用滑鼠右鍵按一下 [名稱] 欄位標頭,再按一下 [註解]
    4. 用滑鼠右鍵按一下具有 [Microsoft .NET Framework 2.0 RTL x86 enu] 註解的快取 Windows Installer 檔案,然後按一下 [解除安裝]
    5. 解除安裝程序完成之後,結束 Windows Installer。
  2. 從電腦中手動刪除下列項目。注意 根據 .NET Framework 安裝程式目前的情況而定,電腦上可能不存在這些項目。
    • URTTemp 資料夾
    • Mscoree.dll 檔
    • v2.0.50727 資料夾
    如果要執行這項操作,請依照下列步驟執行:
    1. 按一下 [開始],再按一下 [執行],在 [開啟] 方塊中輸入 system32,然後按一下 [確定]。[System32] 資料夾的內容隨即出現在 Windows 檔案總管中。
    2. 找出並刪除 [URTTemp] 資料夾。
    3. 找出並刪除 [mscoree.dll] 檔案。

      注意 如果電腦上也安裝了 .NET Framework 1.1 或 .NET Framework 1.0,並且您不想重新安裝 .NET Framework 2.0,則必須修復 .NET Framework 1.1 或 .NET Framework 1.0。如需詳細資訊,請參閱下列「Microsoft 知識庫」文件中的<修復 .NET Framework>一節:
      824643? (http://support.microsoft.com/kb/824643/ ) 如何疑難排解 Microsoft .NET Framework 1.1 安裝問題
    4. 按一下 [開始],再按一下 [執行],在 [開啟] 方塊中輸入 microsoft.net,然後按一下 [確定]。[Microsoft.NET] 資料夾的內容隨即出現在 Windows 檔案總管中。
    5. 在 [Microsoft.NET] 資料夾中,按兩下 [Framework] 資料夾。
    6. 在 [Framework] 資料夾中,刪除 [v2.0.50727] 資料夾。
    7. 關閉 [Framework] 資料夾。
  3. 手動刪除相關的登錄機碼:
    1. 按一下 [開始],再按一下 [執行],在 [開啟] 方塊中輸入 regedit,然後按一下 [確定] 啟動 [登錄編輯程式]。
    2. 在 [登錄編輯程式] 中找出然後刪除下列登錄機碼。

      注意 根據 .NET Framework 安裝程式目前的情況而定,電腦上可能不存在這些登錄機碼。
      • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727
      • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\policy\v2.0
    3. 結束 [登錄編輯程式]。
  4. 使用「Windows Installer CleanUp 公用程式」(Msizap.exe) 從登錄移除 Windows Installer 資訊。您可以從「Microsoft 下載中心」取得「Windows Installer CleanUp 公用程式」。

    您可以從「Microsoft 下載中心」下載下列檔案:
    摺疊此圖像展開此圖像
    下載
    立即下載 Windows Installer CleanUp 公用程式 (Msicuu2.exe) 套件 (http://download.microsoft.com/download/e/9/d/e9d80355-7ab4-45b8-80e8-983a48d5e1bd/msicuu2.exe)
    如需有關如何下載 Microsoft 支援檔案的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
    119591? (http://support.microsoft.com/kb/119591/ ) 如何從線上服務取得 Microsoft 支援檔案
    Microsoft 已對這個檔案做過病毒的掃描。Microsoft 是利用發佈當日的最新病毒偵測軟體來掃描檔案,看看有沒有病毒感染。檔案會儲存在安全的伺服器上,以避免任何未經授權的更改。

    如需詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
    290301? (http://support.microsoft.com/kb/290301/ ) 說明 Windows Installer CleanUp 公用程式
    如果要從登錄移除 Windows Installer 資訊,請依照下列步驟執行:
    1. 按一下 [開始],再按一下 [執行],在 [開啟] 方塊中輸入 cmd,然後按一下 [確定]
    2. 在命令提示字元中,找出包含「Windows Installer CleanUp 公用程式」的目錄,然後執行下列命令:
      Msizap TP {7131646D-CD3C-40F4-97B9-CD9E4E6262EF}
    3. 重新啟動電腦。
  5. 停用電腦上已安裝的所有防毒軟體程式和防火牆程式。如果要執行這項操作,請使用「系統設定公用程式」(Msconfig.exe) 執行電腦的乾淨啟動,然後停用不需要的任何服務。

    當您以診斷模式使用 [系統設定公用程式] 時,請在 [服務] 索引標籤上重新啟用「Windows Installer 服務」。

    如果要啟動 [系統設定公用程式],請依序按一下 [開始][執行],然後在 [開啟] 方塊中輸入 msconfig,再按一下 [確定]
  6. 刪除 [Temp] 資料夾的內容:
    1. 按一下 [開始],再按一下 [執行],在 [開啟] 方塊中輸入 %Temp%,然後按一下 [確定]。[Temp] 資料夾的內容隨即出現在 Windows 檔案總管中。
    2. 在 [Temp] 資料夾中,按一下 [編輯] 功能表上的 [全選]
    3. 按一下 [檔案] 功能表上的 [刪除]

      注意 請儘可能刪除 Temp 資料夾中的檔案和資料夾。
  7. 重新安裝 .NET Framework 2.0。如果要取得 Microsoft .NET Framework 2.0 版可轉散發套件 (x86),請造訪下列 Microsoft 網站:
    http://www.microsoft.com/downloads/details.aspx?displaylang=zh-tw&FamilyID=0856EACB-4362-4B0D-8EDD-AAB15C5E04F5 (http://www.microsoft.com/downloads/details.aspx?displaylang=zh-tw&FamilyID=0856EACB-4362-4B0D-8EDD-AAB15C5E04F5)
    如果要取得 Microsoft .NET Framework 2.0 版可轉散發套件 (IA64),請造訪下列 Microsoft 網站:
    http://www.microsoft.com/downloads/details.aspx?displaylang=zh-tw&FamilyID=0856EACB-4362-4B0D-8EDD-AAB15C5E04F5 (http://www.microsoft.com/downloads/details.aspx?displaylang=zh-tw&FamilyID=53C2548B-BEC7-4AB4-8CBE-33E07CFC83A7)
    注意 如果您不想重新安裝 .NET Framework 2.0,而電腦上已安裝了 .NET Framework 1.1 或 .NET Framework 1.0,則必須修復 .NET Framework 1.1 或 .NET Framework 1.0。您必須修復這些安裝程式以取代 Mscoree.dll 檔和 URTTemp 資料夾。

?考

如需詳細資訊,請造訪下列 Microsoft Developer Network (MSDN) 網站:
登錄編輯程式
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vsintro7/html/vxurfRegistryEditor.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vsintro7/html/vxurfRegistryEditor.asp)

Windows Installer
http://msdn2.microsoft.com/en-us/library/aa372866.aspx (http://msdn2.microsoft.com/en-us/library/aa372866.aspx)

常見問題集
http://msdn2.microsoft.com/en-us/netframework/aa497323.aspx (http://msdn2.microsoft.com/en-us/netframework/aa497323.aspx)

.NET Framework 中的版本處理、相容性和並存執行 (英文)
http://msdn2.microsoft.com/en-us/netframework/aa497340.aspx (http://msdn2.microsoft.com/en-us/netframework/aa497340.aspx)

這篇文章中的資訊適用於:
  • Microsoft .NET Framework 2.0
  • Microsoft .NET Framework 2.0?應用於:
    • Microsoft Windows Server 2003, Enterprise x64 Edition
    • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
    • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
    • Microsoft Windows Server 2003, Datacenter x64 Edition
    • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
    • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
    • Microsoft Windows Server 2003, Standard x64 Edition
    • Microsoft Windows 2000 Professional Edition
    • Microsoft Windows 2000 Server
    • Microsoft Windows 2000 Advanced Server
    • Microsoft Windows 2000 Datacenter Server
    • Microsoft Windows XP Professional
    • Microsoft Windows XP Home Edition
關鍵字:?
kbhowtomaster kbtshoot KB908077
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。