注册表[教程]一、什么是注册表注册表是2000/XP操作系统、硬件设备以及客户应用程序得以正常运行和保存设置的以说是一个非常巨大的树状分层结构的数据库系统。
注册表记录了用户安装在计算机上的软件和每个程序的相互关联信息,它包括了计自动配置的即插即用的设备和已有的各种设备说明、状态属性以及各种状态信息利用一个功能强大的注册表数据库来统一集中地管理系统硬件设施、软件配置等信增强了系统的稳定性。
二、注册表的功能刚才我们看到了,注册表中记录了用户安装在计算机上的软件和每个程序的相关信件、软件、用户环境和操作系统界面的数据信息文件。
相关知识:注册表文件的数据信息保存在system.dat和user.dat中、 利用regedit表文件(其实大家可能也知道regedt32.exe,这两个程序是一样的)三、编辑器说明:别说你不知道怎么进注册表啊(哈,在运行里键入regedit就可以根键:这个称为HKEY…………,某一项的句柄项:附加的文件夹和一个或多个值子项:在某一个项(父项)下面出现的项(子项)值项:带有一个名称和一个值的有序值,每个项都可包括任何数量的值项,值项由数据类型和数据。
说明:1、名称:不包括反斜线的字符、数字、代表符和空格的任意组合。
同一键中不2、数据类型:包括字符串、二进制和双字节等3、数据:值项的具体值,它的大小可以占用64KB*****************************************************************第二课总体结构分析注册表包括以下5个根键1.HKEY_CLASSES_ROOT说明:该根键包括启动应用程序所需的全部信息,包括扩展名,应用程序与文档之名,DDE和OLE信息,类ID编号和应用程序与文档的图标等。
2.HKEY_CURRENT_USER说明:该根键包括当前登录用户的配置信息,包括环境变量,个人程序以3.HKEY_LOCAL_MACHINE说明:该根键包括本地计算机的系统信息,包括硬件和操作系统信息,安全数据和设置信息4.HKEY_USERS说明:该根键包括计算机的所有用户使用的配置数据,这些数据只有在用户登录系息告诉系统当前用户使用的图标,激活的程序组,开始菜单的内容以及颜色,字体5.HKEY_CURRENT_CONFIG说明:该根键包括当前硬件的配置信息,其中的信息是从HKEY_LOCAL_MACHIN ***********************************************************************第三课HKEY_CLASSES_ROOT我们知道,在这一个根键中记录的是WINDOWS操作系统中所有数据文件的信文件扩展名和与之相对应的应用程序。
这就是为什么我们双击某一个文档的时候,用程序的所在了。
这个根键的子键当大家展开时发现是非常多的,它主要分为两种:一是已经注册的是各种文件类型的有关信息。
下面我们以AVIFILE举例说明一下其下面的子项的含义:1、CLSID:分类标识,系统可以用这个类标识来识别相同类型的2、Compressors:它下面有两个子项auds:用于设置音频数据压缩程序的类标识vids:用于设置视频数据压缩程序的类标识3、defaultlcon:用于设置默认图标,这个大家可以改一下试4、RIFFHandlers:在它的下面有两个类标识AVI:用于设置AVI文件的类标识WAVE:用于设置WAVE文件的类标识5、protocol:包括了执行程序和编辑程序的路径和文件名StdExecute(stdfileediting)_server:用于指定编辑程序StdExecute(stdfileediting)_PackageObjects:用于指定后打开AVI包对StdExecute(stdfileediting)_verb:用于设置编辑程序时的工作状态,其中6、Shell子项:用于设置视频文件的外壳open:用于设置打开AVI文件的程序play:用于设置播放命令的程序7、Shellex:包括了视频文件的外壳扩展*************************************************************************第四课HKEY_CURRENT_USER此根键中保存的信息(当前用户的子项信息)与HKEY_USERS_DEFAULT下HKEY_CURRENT_USER根键中的信息的修改都会导致对HKEY_USERS_DEFAULT中子项的修改************************************************************************第五课HKEY_LOCAL_MACHINE此根键中存放的是用来控制系统和软件的设置,由于这些设置是针对那些使用Wind的,是一个公共配置信息,所以它与具体的用户没多大关系。
1、HARDWARE子项:该子项包括了系统使用的浮点处理器、串口等ACPI:存放高级电源管理接口数据DEVICEMAP:用于存放设备映射DESCRIPTION:存放有关系统信息RESOURCEMAP:用于存放资源列表2、SAM子项:哈哈,这部分被保护了,看不到3、SECURITY子项:该子项只是为将来的高级功能而预留的4、SOFTWARE子项:该子项中保留的是所有已安装的32位应用程序的信息,各个程序相应的子项中,由于不同的计算机安装的应用程序互不相同,因此这个子项下面的子项信息也5、SYSTEM子项:该子项是启动时所需的信息和修复系统时所需要的currentcontrol:保存了当前驱动程序控制集中的所有信息************************************************************************第六课HKEY_USERS此根键中保存的是默认用户(default),当前登录用户和软件(software) 的信息,中最重要的,它的配置是针对未来将会被创建的新用户的。
新用户根据默认用户的配置信息来生件包括环境、屏幕和声音等多种信息,其中常用的3项有:1、AppEvents子项:它包括了各种应用事件的列表EventLabels:按字母顺序列表Schemes:按事件分类列表2、Control Panel子项:它包括内容与桌面、光标、键盘和鼠标等设3、Keyboard layout子项:用于键盘的布局(如语言的加载顺序Preload:语言的加载顺序Substitutes:设置可替换的键盘语言布局Toggle:用于选择键盘语言************************************************************************第七课HKEY_CURRENT_CONFIG此根键存放的是当前配置的文件信息。
实际上细心的读者已经发现了,五大根键实际上并不是五个,在以前的时候我发过总结,今天我再重新发上来-----------------------------------------我们都知道用regedit或regedit32都可以打开注册表文件,在XP系统下的时候,这的,当我们打开注册表后看到了类似资源管理器的东西,这里面都有什么呢?HKEY_CLASSES_ROOTHKEY_CURRENT_USERHKEY_LOCAL_MACHINEHKEY_USERSHKEY_CURRENT_CONFIG看是五个分支,其实就是HKEY_LOCAL_MACHINE、HKEY_USERS这两个才是真正的注册分支映射出来的,相当于快捷方式或是别名,这样的话看注册表就简单了许多了,现在说一下每HKEY_CLASSES_ROOT:列出当前计算机注册的所有COM服务器和与应用程序相关联的所有文件HKEY_CURRENT_USER:保存着当前登录到由这个注册服务的计算机上的用户配置文件HKEY_LOCAL_MACHINE:保存操作系统及硬件相关信息的配置单元,它是一个公共的配置信息与具体用户无值SOFTWARE:保存着与这台电脑中安装的应用程序相关的设置。
SYSTEM:WINDOWS所装载的设备驱动程序以及当WINDOWS启动时所需要的HKEY_USERS:包含当前计算机所有用户配置文件。
HKEY_CURRENT_CONFIG:计算机当前会话中的所有硬件配置信息第八课注册表的基本操作1、创建项和项值2、更值项的数据3、删除项、子项或值项4、查找项、值项或数据具体操作请看演示------------------说明-------------注册表中常用的数据类型有5种:二进制值(reg_binary):多数硬件信息以二进制数据存储,而以十六进制格式显字符串值(reg_sz):包括字符串的注册表键,使用字符双字节值(reg_dword):是32位信息常显示成4个字节。
它在出错控制功能上用处极进制格式显示在注册表编辑器中。
多字符串值(reg_multi_sz):允许将一系列项目作为单独的一个值使用。
对于多种网备列表以及其他类似的列表项目来说,可以使用多字符串值可扩充字符串值(reg_expand_sz):代表一个可扩展的字符串************************************************************************第九课注册表破坏的现象及原因一、注册表破坏后的常见现象1、无法启动系统2、无法运行或正常运行合法的应用程序3、找不到启动系统或运行应用程序所需的文件4、没有访问应用程序的权限5、不能正确安装或装入驱动程序6、不能进行网络连接7、注册表条目有错误二、注册表被破坏的原因1、应用程序错误:这个出现的时候比较多,因为我们知道应用程序或多或少的时候致不同的后果;另外在系统中安装过多的软件后,有可能出现彼此之间的冲突。
2、驱动程序不兼容:其实我发现好多出在系统自动安装的驱动程序上,如果你本身是用专业的比较好一些3、硬件问题:这里面好我问题出现在硬件质量上,比如硬盘或内存质量不过关造成CMOS或病毒等4、误操作:这个大家不知出现了没有,您的误操作可能会导致注册表出现错误,有的。
具体怎么办呢?哈哈,下节讲了************************************************************************第十课 备份注册表不用问为什么了吧,以防万一,先备份一份,坏了一恢复,OK一、手工备份注册表大家把以下几个文件直接复制到另一个文件夹就可以了1、在windows\system32\config下有以下几个文件用以保存系统配 SAM、SYSTEM、SOFTWARE、DEFAU2、在Documetents and settings\username文件夹中保存用户配置 NETUSER·DAT当然对应的LOG文件应该一块保存二、注册表导出法导出注册表1、运行regedit.exe2、在文件中选择导出命令3、回答文件名和位置,OK了三、通过系统备份功能进行备份1、选择开始—程序—附件—系统工具—备份2、选择高级模式点下一步3、选择system state(系统状态),在底下文件名中位置中回答路径及4、点击开始备份************************************************************************第十一课恢复注册表如果说恢复的前题是备份的话,那么上节课的内容一定要学好了,但也不完全都是,我表吧.1、重新启动系统恢复注册表哈哈,这个简单,一重启就可以修正各种在注册表中出现的错误了,但是以硬盘上前提的。