学习window系统下的注册表
一直不明白注册表是一个什么鬼,查了资料后大概明白了注册表到底有什么用,其实简单来说注册表就是一个存放系统、硬件、应用配置信息的数据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,打开注册表编辑器。
##### 五、注册表的结构
注册表相当于一个数据库,打开之后可以看到图中的左侧列表就是**根键**

将**根键**展开之后可以看到很多文件夹目录就是**主键**,而文件夹目录下的文件夹就是**子键**。有关根键和对应的主键的理解请参阅教程:
[注册表教程1](http://www.bianceng.cn/film/regedit-index1.htm)
[注册表教程2](http://tech.163.com/special/s/000915SN/stregedit.html)
学习window系统下的注册表的更多相关文章
- delphi在64位系统下写注册表注意事项
HKEY_LOCAL_MACHINE写这个主键下的项,在64位系统下可能会重定向,所以构造时要加KEY_WOW64_64KEY reg := TRegistry.Create(KEY_WRITE or ...
- Delphi在win7/vista下写注册表等需要管理员权限的解决方案
看到论坛好多人问win7下写注册表的问题,我结合自己的理解写了一点东西,首先声明一下,本人初学Delphi,水平有限,大家见笑了,有什么不对之处请老鸟多指点. [背景]win7/Vista提供的UAC ...
- 记录Window系统下myeclipes连接linux下mysql所出现的一个bug
记录myeclipes远程连接mysql所出现的一个bug 今天在玩框架hibernate时,出现一个非常费解的bug,话不多说,先看bug Access denied for user 'root' ...
- Java Windows下读取注册表的工具类
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import ...
- WinCE下读取注册表获得SD路径
WinCE下读取注册表获得SD路径 [要点]WinCE注册表中[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SDMemory\] 下键Folde ...
- 使用.NET 4.0+ 操作64位系统中的注册表
一.64位系统中的注册表 以 LocalMachine 中的启动项为例: 64位应用的注册表位置还是在: SOFTWARE\Microsoft\Windows\CurrentVersion\Run 而 ...
- 在window系统下配置login.sql
在window系统下配置login.sql 他的位置是登录用户的文件夹,我的win7系统位置是: C:\Users\Administrator 我的login.sql下载地址: http://file ...
- 如何修改Window系统下PATH路径以及win8下masm32V11
如何修改Window系统下PATH路径 //其实这个都是临时性的, 退出dos窗口就没有用了,只是做个笔记罢了 C:\Users\Administrator> set path=E ...
- 在ROS(indigo)中读取手机GPS用于机器人定位~GPS2BT在ubuntu和window系统下的使用方法~
在ROS(indigo)中读取手机GPS用于机器人定位~GPS2BT在ubuntu和window系统下的使用方法~ 不需要额外购买GPS设备. 将手机GPS数据通过蓝牙传输给计算机使用,当然通过类似方 ...
随机推荐
- angularJS 系列(二)——理解指令 understanding directives
参考:https://github.com/angular/angular.js/wiki/Understanding-Directives Injecting, Compiling, and Lin ...
- java中关于编码的问题(字符转换流及字符缓冲流 )
上次我们使用的是字节流,还有一种方式就是字符流,上次说过如何分辨使用哪种流,如果记事本可以读懂则使用字符流,否则使用字节流.使用字符流就需要牵扯到编码的问题,下面给出一种转化流的格式. OutputS ...
- 前端设计——js实现图片切换的淡入淡出
1.网页结构如图所示 2.页面布局设计细节 ①分块:一个小方块是一个div. ②无序列表一般是竖直排放的,可以通过float让其水平排放.float:left; ③三个小方块是浮动上去的,所以要用到p ...
- 使用Java操作文本文件的方法详解
使用Java操作文本文件的方法详解 摘要: 最初java是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和Writer两个类 最初java是不支持对文本文件的处理的,为了弥补这个缺憾而 ...
- 【转】成为Linux内核高手的四个方法
我曾经问别人如何开始内核编程的学习,他们基本上都说:①如果你不需要了解内核是如何为你工作的,你为何要尝试呢?②你应该订阅Linux内核邮件列表,然后努力去理解.③如果你不去编写针对Linux内核的代码 ...
- jQuery-ui datepicker的使用演示代码
这两天使用jquery做一个web端展示的工具,遇到了不少问题也学到了不少知识.其中有一个就是在页面中显示日期选择器的功能,通过百度直接使用的是jquery datepicker 看到一篇使用说明很不 ...
- SSH报错分析
排错设计思路 1.配置文件的端口号修改 2.禁用root 3./etc/hosts.allow /etc/hosts.deny 4.iptables 5.密钥文件及目录的权限修改 1. 报错的原因:是 ...
- mac解压缩
tar 解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)---------------.gz解压1:gunz ...
- Object类可以接受引用类型
Object类是一切类的父类,所以Object类可以接受一切引用类型.连数组和接口对象也都可以接受. 1.接受数组 public class ObjectTest{ public static voi ...
- Java中实现Serializable接口为什么要声明serialVersionUID?
什么情况下需要修改serialVersionUID 的值? 序列化运行时使用一个称为 serialVersionUID 的版本号与每个可序列化类相关联,该序列号在反序列化过程中用于验证序列化 ...