Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

軟體安裝無限重啟循環?註冊表殘留導致安裝失敗的根因與解法

編輯:XP 系統應用技巧

安裝軟體時系統提示「先前已安裝過此軟體」,要求重啟後再安裝,但重啟後問題依舊,陷入無限重啟循環。這是經典的註冊表殘留問題,尤其常見於未正確卸載、使用第三方清理工具不當,或系統還原後留下殘留註冊鍵值的情況。

核心原因:註冊表殘留欺騙安裝程式

軟體安裝程式在執行時,會掃描註冊表特定路徑(如 HKEY_LOCAL_MACHINE\SOFTWARE、HKEY_CURRENT_USER\SOFTWARE)檢查是否已安裝。若發現殘留鍵值,安裝程式會誤判為「舊版本需先移除」,進而要求重啟以完成清理,實際上系統並無實際檔案殘留,導致無限循環。

解決方案:手動清除註冊表殘留項

  1. 按 Win + R 輸入 regedit 開啟註冊表編輯器
  2. 依序展開或使用 Ctrl + F 搜尋軟體名稱/開發商名稱
  3. 重點檢查路徑:
    • HKEY_LOCAL_MACHINE\SOFTWARE\[軟體名稱]
    • HKEY_CURRENT_USER\SOFTWARE\[軟體名稱]
    • HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\[軟體名稱](64位系統)
    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
  4. 找到相關項目後,右鍵刪除(建議先匯出備份)
  5. 按 F3 繼續搜尋下一個,直到搜尋完畢
  6. 重新啟動系統後再嘗試安裝

常見安裝封裝工具的專屬解法

1. InstallShield 封裝軟體

常見錯誤:不支援此介面、RPC 錯誤、IkKernel 錯誤

  • 工作管理員結束 IKernel.exe 進程
  • 刪除 C:\Program Files\Common Files\InstallShield\Engine 與 InstallShield 目錄
  • 檢查註冊表權限:HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID、Interface、TypeLib 需有管理員權限
  • 至 InstallShield 官網搜尋錯誤代碼(如 Error -1608)尋找對應修正程式

2. Wise Install System

  • 至 Wise 官網支援頁,關鍵字搜尋錯誤訊息
  • 篩選「Problems」類別、對應作業系統與產品

3. Inno Setup

  • 腳本簡單,官網無詳細資料庫,建議檢查腳本語法或重新編譯

4. MSI (Windows Installer) 格式

常見錯誤:1603、1601、無法存取 Windows Installer 服務

  • 服務管理中重啟 Windows Installer 服務
  • 執行 msiexec /unregserver 後再執行 msiexec /regserver 重新註冊
  • 若服務標記為刪除無法啟動:
    1. 刪除註冊表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSIServer
    2. 執行 instmsiw.exe 重新安裝
    3. 右鍵 msi.dll 選「安裝」註冊 DLL
    4. 安全模式下執行:regsvr32 /u %windir%\msi.dll → del %windir%\msi.dll → 重啟 → 執行 instmsiw.exe
  • 單一 MSI 程式安裝失敗:使用 Windows Installer CleanUp Utility 清除快取,或刪除 C:\Windows\Installer 目錄下對應 MSI 檔案(隱藏系統目錄)

預防與維護建議

  • 使用官方卸載程式或 Revo Uninstaller 等工具完整移除軟體
  • 避免直接刪除安裝目錄跳過卸載流程
  • 定期備份註冊表或建立系統還原點

徹底清除註冊表殘留,即可打破安裝重啟循環,讓軟體順利部署。

Copyright © Windows教程網 All Rights Reserved