安全中国首页 > 文章中心 > 逆向工程技术
 
安全中国网友投稿专用上传FTP空间:
Ftp服务器:download.anqn.com
Ftp端口:21
用户名:anqn
密 码:anqn.com
 

软件破解教程-第5章第4节 注册表(图)

更新时间:2007-11-10 0:59:42
责任编辑:果果龙
热 点:

第5章 函数、资源与注册表

第四节 注册表

1.注册表Reigstry的层次结构

    注册表Reigstry的层次结构类似于硬盘中的目录树,我们可参见图1.2。

┌──────┐
│ 注册表     │
│ Registry   │
└──┬───┘
      │
      │  ┌────┐
      ├─┤ 根键   │
      │  └─┬──┘
              │        ┌────┐
              ├──┤ 子键   │
              │    └─┬──┘
                        │    ┌────┐
                        ├──┤ 子键   │
                        │    └─┬──┘
                                  │  ┌───┐ 
                                  ├─┤键值项│
                                  │  └───┘

图1.2

 

     表1.1是对图1.2中的Registry层次结构的解释。

     表1.1 图1.2中的Registry层次结构的解释

层次

说 明

根键

根键类似于硬盘上的根目录。 Registry有四个预定义的根键:

1、HKEY_LOCAL_MACHINE

2、HKEY_USERS

3、HKEY_CURRENT_USER

4、HKEY_CLASSES_ROOT

键与子键

键和子键类似于文件管理器中看到的目录结构,在键下面是子键,就象目录可以包含子目录一样

键值项

键值项类似硬盘上树型目录的末端文件,键和子键可以包括一个或多个键值项。键值项由键值名、数据类型和键值三部分组成,其格式为:“键值名:数据类型:键值”。

键值类型

Registry中有如下三种键值类型:

  1. DWORD值:只允许一个键值,并且必须为1-8个16进制数据(即双字)。
  2. 字符串值:只允许一个键值,并且作为要存储的字符串来解释。

二进制值:只允许一个值,是16进制数字串,每对作为一个字节值解释。

表1.1

六大根键的作用

  在注册表中,所有的数据都是通过一种树状结构以键和子键的方式组织起来,十分类似于目录结构。每个键都包含了一组特定的信息,每个键的键名都是和它所包含的信息相关的。如果这个键包含子键,则在注册表编辑器窗口中代表这个键的文件夹的左边将有“+”符号,以表示在这个文件夹中有更多的内容。如果这个文件夹被用户打开了,那么这个“+”就会变成“-”。

1、HKEY_USERS

  该根键保存了存放在本地计算机口令列表中的用户标识和密码列表。每个用户的预配置信息都存储在 HKEY_USERS 根键中。 HKEY_USERS 是远程计算机中访问的根键之一。

2、HKEY_CURRENT_USER   该根键包含本地工作站中存放的当前登录的用户信息 包括用户登录用户名和暂存的密码 ( 注:此密码在输入时是隐藏的 ) 。用户登录 Windows 98 时,其信息从 HKEY_USERS 中相应的项拷贝到 HKEY_CURRENT_USER 中。

3、HKEY_CURRENT_CONFIG   该根键存放着定义当前用户桌面配置 ( 如显示器等 ) 的数据 最后使用的文档列表( MRU )和其他有关当前用户的 Windows 98 中文版的安装的信息。

4、HKEY_CLASSES_ROOT   包含注册的所有ole信息和文档类型,是从 hkey_local_machine\software\classes复制的。根据在 Windows 98 中文版中安装的应用程序的扩展名 该根键指明其文件类型的名称 。   

5、HKEY_LOCAL_MACHINE   该根键存放本地计算机硬件数据 此根键下的子关键字包括在 SYSTEM。DAT 用来提供 HKEY_LOCAL_MACHINE 所需的信息 或者在远程计算机中可访问的一组键中。该根键中的许多子键与 System。ini 文件中设置项类似。

6、KEY_DYN_DATA   该根键存放了系统在运行时动态数据,此数据在每次显示时都是变化的,因此,此根键下的信息没有放在注册表中


   2.Registry与INI文件之间的关系

     Registry与Windows 98中的INI文件有许多相似之处。键或子键类似于INI文件中的小节,一个键值项对应于INI文件中小节里的一条设置项。然而,Registry可以包括子键,而INI文件不支持小节的嵌套。

    Registry中的键值项还可以包含可执行代码,而在INI文件中设置项只是简单的字串。

    在同一台计算机上有多个用户,Registry可以存储每个用户的特性,而INI文件中却不可能。

如果您在Windows 3.x上升级为Windows 98,则安装程序会从System.ini和Win.ini文件文件中选择一些延续信息放入到注册表中。不过,为了与以前的Windows版本上的老式16位应用程序保持兼容,INI文件中的有些设置项不能迁移到Windows 98的注册表中。有关Win.ini、System.ini文件的结构与设置项信息详见附录A。

1.注册表中Win.ini信息

表1.2列出了Windows 98在升级安装过程中,从Win.ini文件中移出的部分设置项,以及在注册表中的位置。所有的子键都处于注册表的HKEY_CURRENT_USER根键中。

表1.2 注册表中Win.ini信息

小节

设置项

HKEY_CURRENT_USER中的子键分支

[desktop]

GridGranularity

Control Panel\desktop

Pattern

Control Panel\desktop

TileWallPaper

Control Panel\desktop

[windows]

ScreenSaveActive

Control Panel\desktop

ScreenSaveTimeOut

Control Panel\desktop

[Sounds]

Sound Event Name

AppEvents\Schemes\Apps\.Default\Sound Event Name\.current

[Hearts]

Name

Software\Microsoft\Windows\CurrentVersion\Applets\Hearts

   2.注册表中的System.ini信息

表1.3列出了Windows 98在升级安装过程中从System.ini文件中移出的设置项,以及在注册表中的位置,这些子键都处于注册表的HKEY_LOCAL_MACHINE根键中。根据机器的网络配置,有些系统可能不会出现某些子键。

表1.3 注册表中的System.ini信息

小节

设置项

HKEY_LOCAL_MACHINE内的子键分支

 

 

 

 

 

[Network]

Comment

System\CurrentControlSet\Services\VxD\VNETUP

ComputerName

System\CurrentControlSet\Control\ComputerName\ComputerName

EnableSharing

没有子键入口

LMAnnounce

System\CurrentControlSet\Services\VxD\VNETUP

LogonDomain

没有子键入口

Logon Validated

没有子键入口

MaintainServerList

System\CurrentControlSet\Control\ComputerName\ComputerName

Reconnect

Reshare

没有子键入口

没有子键入口

Username

Network\Logon

Workgroup

System\CurrentControlSet\Control\ComputerName\ComputerName

[386Enh]

Network

没有子键入口

Transport

Software\Microsoft\Windows\CurrentVersion\Network\Real Mode Net

1 2 3 4 下一页

 
相关文章
一日一文章
 
一日一软件
一日一动画