闲聊Windows注册表-基础(windows注册表教程)
但凡涉及调整一些Windows的文件关联、启动项或Windows的一些参数,都与Windows注册表相关,Windows注册表外在是文件形式,内部则是树状结构,和文件系统是差不多的:
下面信息有点密集,请耐心看哈!
最常见的几个Windows注册表文件如下:
oSystem (C:\Windows\System32\config\system) 系统硬件或系统级的相关信息
oSoftware(C:\Windows\System32\config\software) 软件相关信息
oSam(C:\Windows\System32\config\sam) 帐户和密码
oSecurity(C:\Windows\System32\config\security) 本地系统如帐户权限和许可,密码策略,帐户组成员关系等信息
oBCD(c:\boot\bcd) 启动配置信息
这五项任意一项加载失败,Windows就不能正常启动
这些文件又以不同形式组织在注册表树结构中,注意看上面的图:
oBCD 挂载在注册表树结构的HKEY_LOCAL_MACHINE\BCD00000000下
oSYSTEM 挂载在注册表树结构的HKEY_LOCAL_MACHINE\System下
oSOFTWARE 挂载在注册表树结构的HKEY_LOCAL_MACHINE\Software下
oSAM 挂载在注册表树结构的HKEY_LOCAL_MACHINE\SAM下
oSECURITY 挂载在注册表树结构的HKEY_LOCAL_MACHINE\Security下
o.DEFAULT 新用户创建时使用
注册表的树型结构里有几个特殊挂载点值得注意:
- HKEY_CURRENT_USER
存储当前登录用户的特定配置,链接到HKEY_USERS下的相关用户键下(形如HKEY_USERS\<SID>),相同信息在两个键下都可访问 - HKEY_CLASS_ROOT
是HKEY_CURRENT_USER\Software\Classes和HKEY_LOCAL_MACHINE\Software\Classes的组合 - HKEY_CURRENT_CONFIG
指向HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardware Profiles\Current\ - HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
记录着操作系统配置的信息,包括了系统控制、驱动、服务等信息HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet只是当前加载的ControlSet的一个链接,当前Controlset由HKEY_LOCAL_MACHINE\SYSTEM\Select键下的Current的值决定
参见下图,可以直观的有所认识:
不常见的注册表:
- 用户注册表(一个用户有两个)
Ntuser.dat(可漫游) ,保存用户特定的数据,位于%USERPROFILE%\目录下,挂载在HKEY_USERS\<SID>下
UsrClass.dat(不漫游,属于每个用户的) 保存文件关联和COM注册项,挂载在HKEY_USERS\<SID>_Classes下,一般在%USERPROFILE%\Local Settings\Application Data\Microsoft\Windows\目录下或%USERPROFILE%\AppData\Local\Microsoft\Windows\目录下
以上两者都是在用户登录或模拟用户时加载
- 特殊用户的注册表
S-1-5-18 – 系统用户(System Account)
S-1-5-19 – 本地服务用户(Local Service)
S-1-5-20 – 网络服务用户(Network Service)
好,今天就聊到这里,下回讲一下注册表 与程序相关的一些点儿,感兴趣的话点个赞哟!