开发者

Is there a way to recover registry entries that were deleted using RegDeleteKey?

[I am aware that this might actually better belong on superuser but I thought the programmer perspective might yield slightly better/faster results.]

I have just written a sleek new configuration framework for our apps and everything was working just great. There was only one function left to test and that was deleting a registry key (recursively). As everything else had been working exactly as expected I became inexcusably careless and made what was very probably a fatal mistake: I ran the test not step-by-step in the debugger but live...

Seems I made a mistake in the path handling and now everything below HKEY_CURRENT_USER\Software that wasn't locked or otherwise inaccessible at the time of the test is gone.

I used Delphi 2009's TRegistry.DeleteKey method which in turn recursively calls the RegDeleteKey API. Is there some way to undo this either programmatically or using utilities (preferably freeware)?

I am actually rather surprised the system is still running (I am writing this from that machine). I have not logged of or rebooted since this happened. I guess the entries are all cached in memory by the running applications. Can they maybe be brought back from there as well?

System Re开发者_运维知识库store reports that no restore points have been created on this machine though I'm sure there were. Could this also be a symptom of the purged registry? Can this be overcome somehow?

This is on Windows 7 Enterprise (32bit).

HALP!!!


At least it was HKEY_CURRENT_USER.

If roaming profiles are enabled, grab it from the profile store.

If not, it's lost.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜