Another install of Windows or WinPE would work fine. Once it's booted, go to the command prompt and do something like this:
reg load hklm\Old_System C:\Windows\System32\Config\System
reg load hklm\Old_Software C:\Windows\System32\Config\Software
if you need your user settings:
reg load hku\Old_User C:\Users\Jack\ntuser.dat
The registries can them be edited with RegEdit
, note the slightly different names (HKLM\Old_System instead of HKLM\System). When you're done, unload them like this:
reg unload hklm\Old_System
reg unload hklm\Old_Software
reg unload hku\Old-User
The Windows registry was created long after DOS was discontinued. As such, there is no native way to do it, and (not surprisingly) there do not seem to be any DOS programs to do it. Aside from perhaps FreeDOS or ReactOS, it is unlikely that anybody will ever bother to write a Windows registry-editor for DOS.
That said, there is a way you can access and even edit the Windows registry from DOS, but it is not pretty. You would have to use a file-editor (edit.com
is not going to cut it) to access the registry hive files directly. For example, to access HKLM\Software
, you would open C:\Windows\Config\Software
, or to access a user’s hive, you would open C:\Users\<username>\NTUSER.dat
. And this is all assuming that the Windows system drive is even FAT32 since DOS cannot access NTFS without a special driver, most of which only allow read-only access.
Like I said, this method is not pretty because you would need to be familiar with the raw file-format of the Windows registry, be wary of entries that are visible in the file but marked as deleted, and be incredibly careful making any modifications because doing it like that is super risky. As such, this method is highly unadvised (even I don’t bother with it, and I like to crack everything open to look inside).
A much easier and safer method is to simply copy the hive files to another Windows system and mount them (e.g., reg load hku\zzz x:\ntuser.dat
), do whatever you need to, then unmount them (e.g., reg unload hku\zzz
), and copy them back.
Best Answer
You can use Process Monitor, see: http://technet.microsoft.com/en-us/sysinternals/bb896645
Run the program at the same time as Process Monitor is running and then you will be able to see which registery entries are read.
Note some programs refuse to start if a registery monitor is running, guess that they are trying to protect licencing information.