一直不明白注册表是一个什么鬼,查了资料后大概明白了注册表到底有什么用,其实简单来说注册表就是一个存放系统、硬件、应用配置信息的数据ku。
##### 一、注册表的来历
在最早的视窗操作系统win3.x中,操作系统、硬件设备信息及应用程序的配置信息都是通过扩展名为`ini`的文件来保存的,其中`system.ini`负责配置硬件、`win.ini`负责配置桌面设置和应用程序。但是这种方式有明显的缺点:因为ini文件的最大容量限制为64k,所以系统中每种设备和应用程序都有一个和自己对应的.ini文件,而且在应用程序的安装和运行过程中,系统不会自动删除过时和无用的ini文件,随着应用程序不断添加和删除,ini文件越来越多,在ini文件中查找相应信息的速度会越来越慢,系统也会运行缓慢并且不稳定。
为使系统的运行更加稳定,避免因ini文件遭到破坏而导致应用程序出错和系统死机,在win95开始引入注册表的概念。

##### 二、注册表的作用
- 不再把配置信息放在ini文件中,而是全部转移到注册表,包括了计算机系统和应用程序的配置信息、window系统与应用程序的初始化信息、计算机硬件信息、以及各种状态信息和数据。

- 比起ini文件更具有安全性,用户只能通过注册表编辑器对注册表进行修改,regedit,避免了原来由于修改ini文件而导致的问题。
此外注册表中的信息是以某些方式和性质来按照层次结构来存放的,简化了用户对注册表的浏览和管理,提高系统查找效率。

##### 三、注册表的功能
1、注册表是连接操作系统、硬件、驱动程序的数据库。驱动程序的位置、存放地址和版本号都保存在注册表中。有了这些针对各种设备的信息后,操作系统就可以通过驱动程序使用相应的设备。如果没有注册表,操作系统就无法对硬件进行管理。

2、操作系统与应用程序关联的数据库。当启动一个应用程序时,注册表就会向操作系统提供与该应用程序相关的设置,如文件位置、配置文件及启动应用程序所需的其他的必要设置等。

##### 四、注册表的位置
注册表编辑器在: C/window/regedit.exe,或者直接在开始-运行窗口下输入regedit.exe,打开注册表编辑器。

##### 五、注册表的结构
注册表相当于一个数据库,打开之后可以看到图中的左侧列表就是**根键**

![注册表编辑器](http://upload-images.jianshu.io/upload_images/2070541-44d06518c60d6844.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
将**根键**展开之后可以看到很多文件夹目录就是**主键**,而文件夹目录下的文件夹就是**子键**。有关根键和对应的主键的理解请参阅教程:
[注册表教程1](http://www.bianceng.cn/film/regedit-index1.htm)
[注册表教程2](http://tech.163.com/special/s/000915SN/stregedit.html)

学习window系统下的注册表的更多相关文章

  1. delphi在64位系统下写注册表注意事项

    HKEY_LOCAL_MACHINE写这个主键下的项,在64位系统下可能会重定向,所以构造时要加KEY_WOW64_64KEY reg := TRegistry.Create(KEY_WRITE or ...

  2. Delphi在win7/vista下写注册表等需要管理员权限的解决方案

    看到论坛好多人问win7下写注册表的问题,我结合自己的理解写了一点东西,首先声明一下,本人初学Delphi,水平有限,大家见笑了,有什么不对之处请老鸟多指点. [背景]win7/Vista提供的UAC ...

  3. 记录Window系统下myeclipes连接linux下mysql所出现的一个bug

    记录myeclipes远程连接mysql所出现的一个bug 今天在玩框架hibernate时,出现一个非常费解的bug,话不多说,先看bug Access denied for user 'root' ...

  4. Java Windows下读取注册表的工具类

    import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import ...

  5. WinCE下读取注册表获得SD路径

    WinCE下读取注册表获得SD路径 [要点]WinCE注册表中[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SDMemory\] 下键Folde ...

  6. 使用.NET 4.0+ 操作64位系统中的注册表

    一.64位系统中的注册表 以 LocalMachine 中的启动项为例: 64位应用的注册表位置还是在: SOFTWARE\Microsoft\Windows\CurrentVersion\Run 而 ...

  7. 在window系统下配置login.sql

    在window系统下配置login.sql 他的位置是登录用户的文件夹,我的win7系统位置是: C:\Users\Administrator 我的login.sql下载地址: http://file ...

  8. 如何修改Window系统下PATH路径以及win8下masm32V11

    如何修改Window系统下PATH路径   //其实这个都是临时性的, 退出dos窗口就没有用了,只是做个笔记罢了   C:\Users\Administrator>    set path=E ...

  9. 在ROS(indigo)中读取手机GPS用于机器人定位~GPS2BT在ubuntu和window系统下的使用方法~

    在ROS(indigo)中读取手机GPS用于机器人定位~GPS2BT在ubuntu和window系统下的使用方法~ 不需要额外购买GPS设备. 将手机GPS数据通过蓝牙传输给计算机使用,当然通过类似方 ...

随机推荐

  1. FreeRTOS代码剖析

    FreeRTOS代码剖析之1:内存管理Heap_1.c   FreeRTOS代码剖析之2:内存管理Heap_2.c   FreeRTOS(V8.0.1)系统之xTaskGenericCreate() ...

  2. R语言相关工具

    R: 下载 R语言的基础工具,包括R编译器,R控制台等 RStudio:下载 R程序集成开发环境.特别好用,包括一系列的集成工具. Rtools:下载 Windows环境下,编译R包的工具库.也可以用 ...

  3. java丢手帕 约瑟夫问题

    一.问题描述:     n个人围成一个圈,编号为1~n,从第一号开始报数,报到3的倍数的人离开,一直数下去,直到最后只有一个人,求此人编号. 二.问题提示:  使用一维数组,数组元素初始为1,从1开始 ...

  4. (简单) POJ 1847 Tram,Dijkstra。

    Description Tram network in Zagreb consists of a number of intersections and rails connecting some o ...

  5. [Unity AssetBundle]Asset资源处理

    什么是AssetBundle 在很多类型游戏的制作过程中,开发者都会考虑一个非常重要的问题,即如何在游戏运行过程中对资源进行动态的下载和加载.因此,Unity引擎引入了AssetBundle这一技术来 ...

  6. Sping--life cycle

    bean.xml: 注意, 千万不要后面加上 scope="prototype" <?xml version="1.0" encoding="U ...

  7. axis2开发实例(一)

    主要参考<axis2之webservice新手超详细教程http://wenku.baidu.com/view/6eae036d011ca300a6c390a4.html> <axi ...

  8. lPC1788驱动SDRAM

    Sdram型号为hy57v256 #ifndef __SRAM_H_ #define __SRAM_H_ #include "common.h" #include "de ...

  9. ASP.NET脚本过滤-防止跨站脚本攻击[转]

    ASP.Net 1.1后引入了对提交表单自动检查是否存在XSS(跨站脚本攻击)的能力.当用户试图用<xxxx>之类的输入影响页面返回结果的时候,ASP.Net的引擎会引发一个HttpReq ...

  10. java名词解释,让你更好理解

    Java 开发工具包 (JDK) Java开发工具包是Java环境的核心组件,并提供编译.调试和运行一个Java程序所需的所有工具,可执行文件和二进制文件.JDK是一个平台特定的软件,有针对Windo ...