注册表(Registry,繁体中文版Windows称之为登录)是Microsoft Windows中的一个重要的数据库,用于存储系统和应用程序的设置信息。早在Windows 3.0推出OLE技术的时候,注册表就已经出现。随后推出的Windows NT是第一个从系统级别广泛使用注册表的操作系统。但是,从Microsoft Windows 95开始,注册表才真正成为Windows用户经常接触的内容,并在其后的操作系统中继续沿用至今。

注册表是一个数据库,用于保存了系统和程序的设置的信息和参数。
在开始-运行,输入Regedit,可以打开注册表编辑器。 一个简单的示例:
找到
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
分支,修改键值就可以确定系统开机的时候加载或者不加载什么软件。
注册表里面所有的信息平时都是由windows操作系统自主管理的,也可以通过软件或手工修改。注册表里面有很多系统的重要信息,包括外设,驱动程序,软件,用户记录等等,注册表在很大程度上“指挥”电脑怎样工作。

作用
注册表是windows操作系统中的一个核心数据库,其中存放着各种参数,直接控制着windows的启动、硬件驱动程序装载以及一些windows应用程序的运行,从而在整个系统中起着核心作用。这些作用包括了软、硬件的相关配置和状态信息,比如注册表中保存有应用程序和资源管理器外壳的初始条件、首选项和卸载数据等,联网计算机的整个系统的设置和各种许可,文件扩展名与应用程序的关联,硬件部件的描述、状态和属性,性能记录和其他底层的系统状态信息,以及其他数据等。
具体来说,在启动Windows时,Registry会对照已有硬件配置数据,检测新的硬件信息;系统内核从Registry中选取信息,包括要装入什么设备驱动程序,以及依什么次序装入,内核传送回它自身的信息,例如版权号等;同时设备驱动程序也向Registry传送数据,并从Registry接收装入和配置参数,一个好的设备驱动程序会告诉Registry它在使用什么系统资源,例如硬件中断或DMA通道等,另外,设备驱动程序还要报告所发现的配置数据;为应用程序或硬件的运行提供增加新的配置数据的服务。配合ini文件兼容16位Windows应用程序,当安装—个基于Windows 3.x的应用程序时,应用程序的安装程序Setup像在windows中—样创建它自己的INI文件或在win.ini和system.ini文件中创建入口;同时windows还提供了大量其他接口,允许用户修改系统配置数据,例如控制面板、设置程序等。
如果注册表受到了破坏,轻则使windows的启动过程出现异常,重则可能会导致整个windows系统的完全瘫痪。因此正确地认识、使用,特别是及时备份以及有问题恢复注册表对windows用户来说就显得非常重要。[2] 
注册表的数据结构
注册表由键(也叫主键或称“项”)、子键(子项)和值项构成。一个键就是分支中的一个文件夹,而子键就是这个文件夹当中的子文件夹,子键同样它也是一个键。一个值项则是一个键的当前定义,由名称、数据类型以及分配的值组成。一个键可以有一个或多个值,每个值的名称各不相同,如果一个值的名称为空,则该值为该键的默认值。
在注册表编辑器(regedit.exe)中,数据结构显示如下,其中,command键是open键的子键,(默认)表示该值是默认值,值名称为空,其数据类型为REG_SZ,数据值为%systemroot%/system32/notepad.exe"%1数据类型。
注册表的数据类型主要有以下四种:显示类型(在编辑器中)数据类型说明
REG_SZ:字符串:文本字符串
REG_MULTI_SZ:多字符串值:含有多个文本值的字符串
REG_BINARY:二进制数:二进制值,以十六进制显示,
REG_DWORD:双字值;一个32位的二进制值,显示为8位的十六进制值。
 
链接百度百科 https://baike.baidu.com/item/%E6%B3%A8%E5%86%8C%E8%A1%A8/101856?fr=aladdin
 

windows 注册表的更多相关文章

  1. 一些实用的Windows注册表

    一些实用的Windows注册表 1.去掉快捷方式文件名后面自动添加的"-快捷方式" 在给某个文件创建快捷方式时(选中文件-->右键-->发送到-->桌面快捷方式) ...

  2. 使用Java修改Windows注册表

    使用Java修改Windows注册表,使用最基本的就是cmd命令. 事例和运行结果如下所示: package day01; import java.io.IOException; /* 1,reg a ...

  3. Java 修改Windows注册表,以实现开机自启动应用程序。

    使用Java修改Windows注册表,使用最基本的就是cmd命令. 事例和运行结果如下所示: package day01; import java.io.IOException; /* 1,reg a ...

  4. Windows注册表的基本知识及应用

    转帖:Windows注册表的基本知识及应用 2009-12-23 11:30:56 分类: Windows注册表的基本知识及应用  一.注册表的重要性 在DOS年代,对计算机的内存管理及系统配置主要通 ...

  5. 1.3 Windows注册表

    如何打开Windows注册表呢? 方法一:Win+R打开命令行,再输入regetdit,回车. 方法二:打开计算机,进入系统所在盘,进入Windows\System32文件夹,找到regedt32,双 ...

  6. 10#Windows注册表的那些事儿

    引言 用了多年的Windows系统,其实并没有对Windows系统进行过深入的了解,也正是由于Windows系统不用深入了解就可以简单上手所以才有这么多人去使用.笔者是做软件开发的,使用的基本都是Wi ...

  7. winreg操作windows注册表详解示例

    #coding:utf-8 #=====================================================================#=====本程序演示了WINR ...

  8. Windows 注册表 16进制时间转换( Convert Reg_binary Time to a Datetime )

    背景: Windows注册表中,存在大量16进制的时间,以 reg_binary存储在注册表中. 例如: 0D 6C A4 4B 37 C5 CE 01 这种值日常报表中需要转换为适合人阅读的格式,实 ...

  9. [转帖]Windows注册表内容详解

    Windows注册表内容详解 来源:http://blog.sina.com.cn/s/blog_4d41e2690100q33v.html 对 windows注册表一知半解 不是很清晰 这里学习一下 ...

  10. 关于windows注册表

    Windows 注册表 应该是一个 数据库.里面包含操作系统以及在其上的软件配置信息和旗下的硬件配置信息,有点就是整体和全面,控制面包和gpedit.msc 组策略应该是抽象过后的注册表配置信息, W ...

随机推荐

  1. 深入理解java虚拟机 精华总结(面试)(转)

    一.运行时数据区域 3 1.1 程序计数器 3 1.2 Java虚拟机栈 3 1.3 本地方法栈 3 1.4 Java堆 3 1.5 方法区 3 1.6 运行时常量池 4 二. hotspot虚拟机对 ...

  2. Linux python安装

    Linux 安装 Python3.5   1. 准备 操作系统:Red Hat Enterprise Linux Server release 6.5 (Santiago) Python 安装包:Py ...

  3. Oracle Flushback 学习测试

    Oracle Flushback 学习测试:三思笔记 Flashback恢复 从9i开始,利用oracle查询的多版本一致的特点,实现从回滚段中读取一定时间内在表中操作的数据,被称为 flashbac ...

  4. js和jQuery判断数组是否包含指定元素

    最近遇见一些前台基础性问题,在这里笔者觉得有必要记录一下,为了以后自己查阅或者读者查看. 已知var arr = ['java','js','php','C++']; 问题:arr数组是否包含‘jav ...

  5. 【Android 多媒体应用】使用MediaCodec解码使用SurfaceView显示视频

    1.MainActivity.java import android.app.Activity; import android.os.Bundle; import android.os.Environ ...

  6. BST树、B-树、B+树、B*树

    BST树 即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right): 2.所有结点存储一个关键字: 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树: 如: ...

  7. 1 ffmpeg介绍

    重点讲解解码的过程.FFmpeg可以进行X264编码.软编码效率是非常低的.即时你编VGA的话它的效率也很低.

  8. 数字调节控件JSpinner的使用

    ---------------siwuxie095                         工程名:TestUI 包名:com.siwuxie095.ui 类名:TestList.java   ...

  9. 在html中打开PDF

    <object classid="clsid:CA8A9780-280D-11CF-A24D-444553540000" width="990" heig ...

  10. 628D Magic Numbers

    传送门 题目大意 定义n-magic为从左往右,偶数位置均为n,奇数位置不为n的一类数.求出[a,b]内所有可被m整除的d-magic个数. 分析 显然是数位dp,我们用dp[i][j][k]表示考虑 ...