Where is the Registry stored in Windows? I want to find the files shown when running
regedit.exe (Windows Registry Editor).
If I think I understand what you are saying, the registry is kept in
%SystemRoot%\System32\config whilst individual users settings are located at
If I have got the wrong end of the stick here, please rephrase your question and I will be happy to help.
On disk, the Windows Registry isn’t simply one large file but a set of discrete files called hives. Each hive contains a Registry tree, which has a key that serves as the root (i.e., starting point) of the tree. Subkeys and their values reside beneath the root.
Location of Windows registry files The location of these registry hives are as follows:
HKEY_LOCAL_MACHINE \SYSTEM : \system32\config\system
HKEY_LOCAL_MACHINE \SAM : \system32\config\sam
HKEY_LOCAL_MACHINE \SECURITY : \system32\config\security
HKEY_LOCAL_MACHINE \SOFTWARE : \system32\config\software
HKEY_USERS \UserProfile : \winnt\profiles\username
HKEY_USERS.DEFAULT : \system32\config\default
Some hives are volatile and don’t have associated files. The system creates and manages these hives entirely in memory; the hives are therefore temporary in nature. The system creates volatile hives every time the system boots. Examples are:
HKEY_LOCAL_MACHINE \HARDWARE : Volatile hive HKEY_LOCAL_MACHINE \SYSTEM \Clone : Volatile hive
These files are database files, and only RegEdit, Regedit32 and the Kernel32 can read them. The primary tool in Windows 10/8/7 for working directly with the registry is Registry Editor. To access it, simply type Regedit in Start Menu Search Bar and hit Enter !
If you need to read more on this, head over to TechNet!
UPDATE: AccidentalADMIN has made a useful comment. He says:
Every Windows got a registry Key which lists every hive in system. Open Regedit and navigate to the following key to get a complete list:
I think the quickest and nicest way to achieve this is using PowerShell.
$ Get-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Control\hivelist\
PS: You can navigate through the Registry as if it was a file system. In PowerShell use:
$ cd HKLM:
$ cd HKCU: