2019-08-01

關於“sfc /scanow命令無法修復”的問題

建議您使用以下命令嘗試對您的系統執行修復操作,然後查看效果。

按“Windows徽標鍵+X”,啟動“Windows PowerShell(管理員)”,依次輸入以下命令:

Dism /Online /Cleanup-Image /ScanHealth 

Dism /Online /Cleanup-Image /CheckHealth 

DISM /Online /Cleanup-image /RestoreHealth 

sfc /SCANNOW 


如何檢視「系統檔案檢查程式」程序的詳細資料

如需檢視 CBS.Log 檔案所含的詳細資料,您可使用 Findstr 命令將資訊複製至 Sfcdetails.txt 檔案,然後檢視 Sfcdetails.txt 中的詳細資料。 若要執行這項操作,請依照下列步驟執行:
  1. 如先前步驟 1 所述,請開啟提升權限的命令提示字元。
  2. 在命令提示字元輸入下列命令,然後按下 ENTER:
    findstr /c:"[SR]" %windir%\Logs\CBS\CBS.log >"%userprofile%\Desktop\sfcdetails.txt" 
    注意:Sfcdetails.txt 檔案包含每次「系統檔案檢查程式」工具在電腦上執行時的詳細資料。 該檔案包含「系統檔案檢查程式」工具未修復的檔案相關資訊。 確認日期與時間項目,以判斷上次執行「系統檔案檢查程式」工具時找到的問題檔案。
  3. 從您的桌面開啟 Sfcdetails.txt 檔案。
  4. Sfcdetails.txt 檔案會使用以下格式:
    Date/Time SFC detail
    下列範例記錄檔包含無法修復檔案的項目:
    2007-01-12 12:10:42, Info                  CSI    00000008 [SR] Cannot 
    repair member file [l:34{17}]"Accessibility.dll" of Accessibility, Version = 
    6.0.6000.16386, pA = PROCESSOR_ARCHITECTURE_MSIL (8), Culture neutral, 
    VersionScope neutral, PublicKeyToken = {l:8 b:b03f5f7f11d50a3a}, Type 
    neutral, TypeName neutral, PublicKey neutral in the store, file is missing
     


如何以手動方式用已知的良好檔案複本取代損毀的系統檔案

透過 Sfcdetails.txt 檔案的詳細資訊判斷損毀且無法修復的系統檔案後,請先找出損毀檔案的所在位置,接著以手動方式用已知的良好檔案複本取代損毀的系統檔案。 若要執行這項操作,請依照下列步驟執行:

注意:您可以從另一台執行相同 Windows 版本的電腦取得已知的良好檔案複本。 您可以在該電腦執行「系統檔案檢查程式」程序,以確定您想要複製的系統檔案為良好檔案。
  1. 取得損毀系統檔案的系統管理所有權。 若要執行這項操作,請在提升權限的命令提示字元中,複製並貼上 (或輸入) 下列命令,然後按下 ENTER:
    takeown /f Path_And_File_Name
    注意Path_And_File_Name 預留位置代表損毀檔案的路徑與檔案名稱。 例如,輸入 takeown /f C:\windows\system32\jscript.dll。 
    命令提示字元下,系統管理員權限的命令已成功
     
  2. 授予管理員損毀系統檔案的完整存取權。 若要執行這項操作,請複製並貼上 (或輸入) 下列命令,然後按下 ENTER:
    icacls Path_And_File_Name /GRANT ADMINISTRATORS:F
    注意Path_And_File_Name 預留位置代表損毀檔案的路徑與檔案名稱。 例如,輸入 icacls C:\windows\system32\jscript.dll /grant administrators:F
    以系統管理員權限的命令提示字元
     
  3. 用已知的良好檔案複本取代損毀的系統檔案。 若要執行這項操作,請複製並貼上 (或輸入) 下列命令,然後按下 ENTER:
    複製 Source_File Destination
    注意Source_File 預留位置代表您電腦上已知良好檔案的路徑及檔案名稱,而 Destination 預留位置代表損毀檔案的路徑及檔案名稱。 例如,輸入 copy E:\temp\jscript.dll C:\windows\system32\jscript.dll