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

Vista 安裝 IIS 7 出現「出現錯誤,並非所有的功能被成功更改」解決方案:必須同時移除 WAS 服務

編輯:Windows Vista 教學

在 Windows Vista 上透過「開啟或關閉 Windows 功能」安裝 IIS 7 時,頻繁遇到錯誤訊息:「出現錯誤,並非所有的功能被成功更改」 (An error has occurred. Not all of the features were successfully changed!)。即使以管理員身分執行、關閉防毒軟體、關閉系統保護,問題依舊。根本原因在於 Windows Process Activation Service (WAS) 服務殘留。本文提供經驗證的完整解決方案。

錯誤現象與原因分析

  • 現象: 勾選 IIS 相關功能 → 確定 → 進度條跑完 → 跳出錯誤視窗,IIS 安裝失敗。
  • 事件檢視器記錄: 每次失敗皆記錄 WAS (Windows Process Activation Service) 服務錯誤。
  • 根本原因: 先前嘗試安裝 IIS 失敗或手動移除 IIS 時,WAS 服務未被一併移除。WAS 是 IIS 7 核心依賴元件(提供進程啟動、應用程式集區管理),但它是獨立的 Windows 功能項目。當 IIS 移除而 WAS 殘留,再次安裝 IIS 會嘗試重新設定 WAS,導致衝突失敗。

解決方案:完整移除 IIS 與 WAS,重開機後重新安裝

  1. 開啟 控制台 → 程式集 → 開啟或關閉 Windows 功能。
  2. 在功能清單中,同時取消勾選:
    • Internet Information Services (IIS) (整個節點展開全取消)
    • Windows Process Activation Service (WAS) (在功能清單較下方,獨立節點)
  3. 按「確定」,等待系統完成移除(可能需數分鐘)。
  4. 重新開機(關鍵步驟,確保服務完整卸載、登錄清理)。
  5. 再次開啟「開啟或關閉 Windows 功能」,同時勾選 IIS 與 WAS 安裝。
  6. 安裝應順利完成,不再出現錯誤。

驗證安裝成功

  1. 開啟瀏覽器,輸入 https://localhost,應顯示 IIS 7 預設歡迎頁面。
  2. 開啟「Internet Information Services (IIS) 管理員」 (inetmgr),確認網站、應用程式集區正常運作。
  3. 在「服務」中確認 WAS (Windows Process Activation Service) 與 W3SVC (World Wide Web Publishing Service) 均為「已啟動」且啟動類型為「自動」。

為何這是一個 Windows Bug?

正常的元件依賴關係應由安裝程式自動處理:安裝 IIS 時自動安裝 WAS,移除 IIS 時若無其他元件依賴 WAS 則自動移除 WAS。但 Vista 的元件安裝邏輯缺陷導致移除 IIS 時不檢查 WAS 依賴關係,造成 WAS 成為「孤兒服務」,後續重裝失敗。這在 Vista RTM/SP1 中普遍存在,Win 7 已改善。

替代方案(若上述無效)

  • 命令列安裝: 以管理員身分執行 CMD:
    pkgmgr /iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;IIS-DefaultDocument;IIS-DirectoryBrowsing;IIS-HttpErrors;IIS-HttpRedirect;IIS-ApplicationDevelopment;IIS-ASPNET;IIS-NetFxExtensibility;IIS-ASP;IIS-CGI;IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-ServerSideIncludes;IIS-HealthAndDiagnostics;IIS-HttpLogging;IIS-LoggingLibraries;IIS-RequestMonitor;IIS-HttpTracing;IIS-CustomLogging;IIS-ODBCLogging;IIS-Security;IIS-BasicAuthentication;IIS-WindowsAuthentication;IIS-DigestAuthentication;IIS-ClientCertificateMappingAuthentication;IIS-IISCertificateMappingAuthentication;IIS-URLAuthorization;IIS-RequestFiltering;IIS-IPSecurity;IIS-Performance;IIS-HttpCompressionStatic;IIS-HttpCompressionDynamic;IIS-WebServerManagementTools;IIS-ManagementConsole;IIS-ManagementScriptingTools;IIS-ManagementService;IIS-IIS6ManagementCompatibility;IIS-Metabase;IIS-WMICompatibility;WAS-WindowsActivationService;WAS-ProcessModel;WAS-NetFxEnvironment;WAS-ConfigurationAPI
    此法繞過 GUI 邏輯,直接呼叫套件管理器,成功率極高。
  • 系統檔案修復: 執行 sfc /scannow 修復可能損毀的系統檔案。
  • 檢查 CBS.log: C:\Windows\Logs\CBS\CBS.log 記錄詳細安裝失敗原因,可搜尋 "ERROR" 關鍵字分析。

總結

Vista 安裝 IIS 7 失敗 90% 以上是因為 WAS 服務殘留。關鍵口訣:移除 IIS 必須同時移除 WAS → 重開機 → 重新同時安裝 IIS 與 WAS。此法經大量使用者驗證,成功率極高。

Copyright © Windows教程網 All Rights Reserved