1

私は VSS を使用してバックアップ プログラムを作成しており、Windows SDK 6.1 サンプルの VSHADOW.EXE から始めました。通常は動作しますが、次のような特定のファイルが作成されたシャドウ コピー内にまだロックされていることに驚きました。

C:\Users\Felix\NtUser.dat
C:\Users\Felix\NtUser.dat.log1
C:\Users\Felix\AppData\Local\Microsoft\Windows\UsrClass.dat
C:\Users\Felix\AppData\Local\Microsoft\Windows\UsrClass.dat.log1
...

シャドウ コピーでこれらのファイルにアクセスすると(または、CreateFileExTotal Commanderまたはその他のツールを使用して)、通常、エラー 32 (別のプロセスによって使用されているため、プロセスはファイルにアクセスできません) が表示されます。勝手に発生するようです。それはどうしてですか?CopyFileEx

私の以前の編集 (イベント ログ メッセージ) は、この問題の核心ではないことが判明しました。

4

1 に答える 1

2

問題のファイルは、他のロックされたファイルへのシンボリック リンクであることが判明しました。シャドウ コピー内のそれぞれのファイルも、元のハード ディスク上のロックされたファイルを指すシンボリック リンクでした。この問題を解決するには、シンボリック リンクを解決し、シンボリック リンクが指すファイルを見つけ、このファイルをシャドウ コピーに配置する必要があります。

于 2011-09-27T19:18:41.630 に答える