共用方式為


Windows 啟用期間發生錯誤0xC004E002

本文提供嘗試啟用 Windows 時0xC004E002錯誤的解決方案。

原始 KB 編號: 978305

徵兆

當您嘗試啟用 Windows Vista、Windows Server 2008、Windows 7、Windows Server 2008 R2、Windows 8、Windows Server 2012、Windows 8.1 或 Windows Server 2012 R2 時,您可能會收到下列其中一個錯誤訊息:

程序代碼:0xC004C003
描述:啟用伺服器判斷指定的產品密鑰已遭到封鎖。

程序代碼:0xC004E002
描述:軟體授權服務回報授權存放區包含不一致的數據。

原因

發生此問題的原因是在Tokens.dat檔案上設定了不正確的許可權,或此檔案已損毀。

解決方法

若要解決此問題,請依序嘗試下列方法。

方法 1:將正確的許可權設定為Tokens.dat檔案

  1. 選取 [ 開始],然後在 [ 搜尋 ] 方塊中輸入 Cmd。

  2. 以滑鼠右鍵按兩下 Cmd,然後選取 [ 以系統管理員身分執行]。

  3. 在命令提示字元中,根據操作系統輸入下列命令,然後按 ENTER

    針對 Windows Vista 或 Windows Server 2008:

    icacls %windir%\serviceprofiles\networkservice\appdata\roaming\microsoft\softwarelicensing /grant "BUILTIN\Administrators:(OI)(CI)(F)" "NT AUTHORITY\SYSTEM:(OI)(CI)(F)" "NT Service\slsvc:(OI)(CI)(R,W,D)"
    

    tokens.dat的正確許可權看起來應該像 icacls 的輸出:

    tokens.dat NT AUTHORITY\SYSTEM:(I)(F)
             BUILTIN\Administrators:(I)(F)
             NT SERVICE\SLSVC:(I)(R,W,D)
    

    適用於 Windows 7 或 Windows Server 2008 R2:

     icacls %windir%\ServiceProfiles\NetworkService\AppData\Roaming\Microsoft\SoftwareProtectionPlatform /grant "BUILTIN\Administrators:(OI)(CI)(F)" "NT AUTHORITY\SYSTEM:(OI)(CI)(F)" "NETWORK SERVICE:(OI)(CI)(F)"
    

    token.dat的正確許可權看起來應該像 icacls 的輸出:

    tokens.dat NT AUTHORITY\SYSTEM:(I)(F)
                BUILTIN\Administrators:(I)(F)
                NT AUTHORITY\NETWORK SERVICE:(I)(F)
    

    針對 Windows 8、Windows Server 2012、Windows 8.1 或 Windows Server 2008 R2:

    icacls "%windir%\ServiceProfiles\LocalService\AppData\Local\Microsoft\WSLicense" /grant "BUILTIN\Administrators:(OI)(CI)(F)" "NT AUTHORITY\SYSTEM:(OI)(CI)(F)" "NETWORK SERVICE:(OI)(CI)(F)"
    

    tokens.dat的正確許可權看起來應該像 icacls 的輸出:

    tokens.dat NT AUTHORITY\SYSTEM:(I)(F)
             BUILTIN\Administrators:(I)(F)
             NT SERVICE\WSService:(OI)(CI)(R,W,D)
    
  4. 關閉 [命令提示字元] 視窗。

注意

您必須從提升許可權的命令提示字元輸入此命令。

方法 2:重新命名Tokens.dat檔案

  1. 選取 [ 開始],然後在 [ 搜尋 ] 方塊中輸入 Cmd。

  2. 以滑鼠右鍵按兩下 Cmd,然後選取 [ 以系統管理員身分執行]。

  3. 在命令提示字元中,輸入下列命令,然後按 ENTER

    適用於 Windows Vista 或 Windows Server 2008

    net stop slsvc
    

    針對 Windows 7 或 Windows Server 2008 R2

    net stop sppsvc
    

    針對 Windows 8、Windows Server 2012、Windows 8.1 或 Windows Server 2008 R2

    net stop sppsvc
    

    注意

    如果您收到訊息,詢問您是否要繼續執行這項作業,請輸入 Y,然後按 ENTER

  4. 輸入下列命令,然後按 ENTER 鍵。

    適用於 Windows Vista 或 Windows Server 2008

    cd %windir%\serviceprofiles\networkservice\appdata\roaming\microsoft\softwarelicensing
    

    針對 Windows 7 或 Windows Server 2008 R2

    cd %windir%\ServiceProfiles\NetworkService\AppData\Roaming\Microsoft\SoftwareProtectionPlatform
    

    針對 Windows 8、Windows Server 2012、Windows 8.1 或 Windows Server 2008 R2:

    cd %windir%\ServiceProfiles\LocalService\AppData\Local\Microsoft\WSLicense
    
  5. 輸入下列命令,然後按 ENTER

    ren tokens.dat tokens.bar
    
  6. 輸入下列命令,然後按 ENTER

    針對 Windows Vista 或 Windows Server 2008

    net start slsvc
    

    針對 Windows 7 或 Windows Server 2008 R2

    net start sppsvc
    

    針對 Windows 8、Windows Server 2012、Windows 8.1 或 Windows Server 2008 R2:

    net start sppsvc
    
  7. 輸入下列命令,然後按 ENTER

    cd %windir% \System32
    
  8. 輸入下列命令,然後按 ENTER

    cscript slmgr.vbs -rilc
    
  9. 重新啟動計算機兩次,變更才會套用。

是否已修正問題

檢查該問題是否已修正。 如果問題已修正,您已完成本節。 如果問題未修正,針對 Windows 7 或 Windows Server 2008,您可以 連絡支持人員。 Windows Vista 不再提供輔助支援。

資料收集

若您需要 Microsoft 支援,建議您按照使用 TSS 收集部署相關問題的資訊所述步驟來收集資訊。