我創建了影子副本,並且想要使用RegLoadKey()
從該影子副本裝入註冊表配置單元,因此我使用正常的註冊表函數檢查其內容。
這通常工作得很好,除非在某些機器中根本不起作用。將RegLoadKey從影子副本中複製到配置單元文件
我創建的卷影副本,並得到其掛載點 - 像
\\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy8
後來我打電話
RegLoadKeyW(HKEY_LOCAL_MACHINE, "\\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy8\Windows\System32\config\SOFTWARE", "mntpoint");
此調用返回1009 - The configuration registry database is corrupt.
如果我使用CreateFileW()
我可以成功地打開此文件使用該路徑,所以它肯定存在。
我已確保使用註冊表編寫器創建卷影副本,所以我不認爲這是問題所在。
如果我創建卷影副本並在重新啓動後嘗試此操作,則沒有區別。
這隻發生在一些機器上。在大多數情況下它工作得很好。我不知道什麼區別它不工作的機器。
該機是一個Windows 2008 64位。
爲了澄清,這在一些機器上一致地工作,並一直在其他人失敗?任何可以識別的共同因素? –
是的,兩者都是一致的。如前所述,「我不確定區別不適用的機器的區別」 – shoosh