web-dev-qa-db-ja.com

SFCの「修復保留」エラーから回復するにはどうすればよいですか?

Windowsのレジストリとサービスの問題を修正しようとしています。私はsfcコマンドを実行しようとしましたが、これは私が得るエラーメッセージですか?

C:\Windows>sfc /scannow

Beginning system scan.  This process will take some time.    

There is a system repair pending which requires reboot to complete.  Restart
Windows and run sfc again.

C:\Windows>

しかし、このメッセージが最初に表示されてから何度か再起動しました。セーフモードとコンソールモードでコマンドを実行しようとしても、同じメッセージが表示されます。どうすれば取り除くことができますか?

このファイルはwinsxsフォルダーにあります:C:\ Windows\winsxs\cleanup.xml

これはその内容です:

<?xml version='1.0' encoding='utf-16'?>
<PendingTransaction >
    <POQ postAction="NoReboot">
        <DeleteFile path="\??\D:\$$DeleteMe.CbsMsg.dll.01c85bd2f5893b40.0000"/>
    </POQ>
</PendingTransaction>

これは何かでしょうか?これが原因ですか?このファイルを削除しても安全ですか?

更新

名前を変更しようとしましたが、操作に失敗しました。

管理者特権でExplorer.exeを実行し、その場所に移動しました。 UAC確認プロンプトが表示され、次に以下のエラーが表示されます。

Destination Folder Access Denied
You need permission to perform this action

このファイルの名前を変更または削除するにはどうすればよいですか? cmdを使用する必要がありますか、それともセーフモードにする必要がありますか?

更新2

コマンドプロンプトでセーフモードを開始し、ファイルの所有権を取得してから名前を変更しようとしました。名前の変更に失敗しました。

C:\Windows\winsxs>ren cleanup.xml cleanup.xml.old
Access is denied.

C:\Windows\winsxs>takeown /f "cleanup.xml"

SUCCESS: The file (or folder): "C:\Windows\winsxs\cleanup.xml" now owned by user
 "mycomputername\username".

C:\Windows\winsxs>ren cleanup.xml cleanup.xml.old
Access is denied.

C:\Windows\winsxs>

次のコマンドも発行しました。

C:\Windows\system32>icacls "C:\Windows\winsxs\cleanup.xml" /grant username:F
processed file: C:\Windows\winsxs\cleanup.xml
Successfully processed 1 files; Failed processing 0 files

C:\Windows\system32>cd ..\winsxs

C:\Windows\winsxs>ren cleanup.xml cleanup.xml.old
Access is denied.

C:\Windows\winsxs>

それでも、名前を変更することはできません。通常のWindowsモードでこれらの最後の2つのコマンドを発行しました。それは問題ですか?...私は再起動を試みます。

10
Samir

私はWindows 7でも同じ問題を抱えています。最終的に、修復コンソールから次のコマンドを使用してsfcを実行しました(何らかの理由で、D:C:)ではなく、私のメインディスク

 del d:\ windows\winsxs\pending.xml 
 del x:\ windows\winsxs\pending.xml 
 sfc/scannow/offbootdir = D:\ offwindir = D: \ウィンドウズ

(ただし、sfcが教えてくれます

Windowsリソース保護は破損したファイルを検出しましたが、一部を修正できませんでした。

だからこれは修正されませんでした 私の起動の問題

このコマンドはそれを行うことになっています。

dism.exe /image:C:\ /cleanup-image /revertpendingactions

ただし、これはWindows 7以降でのみ機能します。 Windows Vistaには dism.exe ツールがありません。この質問を見つけてWindows 7を持っている人と共有したいと思っただけです。もちろん、自分でテストすることはできませんでしたが、 this guy は、この厄介なエラーメッセージを削除できたと言っています世界から。したがって、試してみる価値があるかもしれません。

4
Samir

RebootPendingというキーが表示された場合は、SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicingの下のレジストリを確認してください。これは、Windowsが保留中の再起動があるかどうかもチェックする場所です。

0
magicandre1981