但凡涉及调整一些Windows的文件关联、启动项或Windows的一些参数,都与Windows注册表相关,Windows注册表外在是文件形式,内部则是树状结构,和文件系统是差不多的:
注册表的树结构
下面信息有点密集,请耐心看哈!
最常见的几个Windows注册表文件如下:
•System (C:\\Windows\\System32\\config\\system) 系统硬件或系统级的相关信息•Software(C:\\Windows\\System32\\config\\software) 软件相关信息•Sam(C:\\Windows\\System32\\config\\sam) 帐户和密码•Security(C:\\Windows\\System32\\config\\security)
本地系统如帐户权限和许可,密码策略,帐户组成员关系等信息
•BCD(c:\\boot\\bcd) 启动配置信息这五项任意一项加载失败,Windows就不能正常启动
这些文件又以不同形式组织在注册表树结构中,注意看上面的图:
•BCD 挂载在注册表树结构的HKEY_LOCAL_MACHINE\\BCD00000000下•SYSTEM挂载在注册表树结构的HKEY_LOCAL_MACHINE\\System下•SOFTWARE 挂载在注册表树结构的HKEY_LOCAL_MACHINE\\Software下•SAM 挂载在注册表树结构的HKEY_LOCAL_MACHINE\\SAM下•SECURITY 挂载在注册表树结构的HKEY_LOCAL_MACHINE\\Security下•.DEFAULT 新用户创建时使用
注册表的树型结构里有几个特殊挂载点值得注意:
HKEY_CURRENT_USER存储当前登录用户的特定配置,链接到HKEY_USERS下的相关用户键下(形如HKEY_USERS\\),相同信息在两个键下都可访问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\\下
UsrClass.dat(不漫游,属于每个用户的) 保存文件关联和COM注册项,挂载在HKEY_USERS\\_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)
好,今天就聊到这里,下回讲一下注册表 与程序相关的一些点儿,感兴趣的话点个赞哟!