码迷,mamicode.com
首页 > Windows程序 > 详细

Windows 注册表

时间:2014-08-14 20:37:49      阅读:494      评论:0      收藏:0      [点我收藏+]

标签:注册表文件位置   注册表重定向   注册表环境变量   注册表打开   syswow64   

<1>64位操作系统上的注册表

<2>文件系统重定向

<3>UAC

<4>注册表重定向

<5>SysWoW64

<6>注册表存放位置

<7>注册表跟环境变量

 

<1>64位操作系统

在64位的操作系统中有64位版本的注册表编辑器以及32版本的注册表编辑器,64版本的注册表在C:\Windows\regedit.exe,32位版本的在C:\Windows\SysWow64\regedit.exe。

注册表中的内容主要分为系统配置文件,用户配置文件。

通过cmd打开注册表编辑器的方法

运行:Regedit(这个表示的是64位的注册表编辑器)

运行:%windir%\SysWOW64\regedit或者%systemroot%\syswow64\regedit(这个表示32位的注册表编辑器)

默认情况下只能打开一个注册表编辑器,如果要打开多个注册表编辑器的话,需要在命令后面加入参数 m,如:%systemroot%\syswow64\regedit -m

 

<2>文件系统重定向

         %windir%\System32文件夹是为64位的应用程序保留的,多数Dll文件并没有在其创建64位的版本时候改变名字,因此32位版本的dll被存储在一个不同的文件夹中。WOW64通过文件系统重定向来隐藏这一不同。

         通常,当一个32位的应用程序试图访问%windir%\System32文件的时候,访问被重定向到%windir%\SysWOW64。访问%windir%\lastgood\system32的时候被重定向到%windir%\lastgood\SysWOW64。访问%windir%\regedit.exe被重定向到%windir%\SysWOW64\regedit.exe。

         如果访问会导致系统显示UAC提示,重定向不会发生。取而代之的是,64位版本的所请求的文件的启动。为了避免这个问题,可以指定SysWOW64文件目录以避免重定向并确保访问的32位版本的文件。或用管理员权限来运行32位应用程序,从而不显示UAC提示。

 

<3>UAC

         UAC是 useraccount control(用户账户控制)的缩写,是微软在windows Vista 和win7中引用的新技术,主要功能是是进行一些影响系统安全的操作时候会自动的触发UAC,用户确认后才能继续执行。

         大部分的恶意软件、木马病毒、广告插件在进入计算机时都会有如:将文件复制到Windows或Program Files等目录、安装驱动、安装ActiveX等操作,而这些操作都会触发UAC。能够触发UAC的操作包括:修改Windows Update配置;增加或删除用户帐户;改变用户的帐户类型;改变UAC设置;安装ActiveX;安装或卸载程序;安装设备驱动程序;修改和设置家长控制;增加或修改注册表;将文件移动或复制到Program Files或是Windows目录。

<4>注册表重定向

创建键KEY_LOCAL_MACHINE\software\vc++此时打开64bit的注册表会在KEY_LOCAL_MACHINE\SOFTWARE\Wow6432node中看到vc++键。如果通过32bit版本的注册表打开,将会在KEY_LOCAL_MACHINE\SOFTWARE中找到vc++键。

 

<5>SysWow64

SYsWow64 是 Windows 32bits onWindows 64bits的缩写,是个Windows操作系统的子系统,64位的操作系统运行32位的程序都是通过这个子系统的。

<6>注册表存放位置

         配置单元是注册表中的项,子项的逻辑组合,它提供了备份注册表中数据的支持文件。每一个新的用户登录到计算机时,一个新的配置单元就会为该用户而被创建,配置单元是基于跟用户属性相关的单独文件。这就是所谓的用户属性配置单元。用户的配置单元包含与用户的应用程序设置,桌面环境,网络连接和打印机特定的注册信息。用户配置文件配置单元都位于HKEY_USERS键。

         注册表文件有以下两种格式:标准的和最新的。标准格式是它也支持更高版本的向后兼容性的Windows版本Windows 2000支持的唯一格式。最新的格式支持开始使用Windows XP。在支持最新格式的Windows版本,下面的配置单元仍然使用标准格式:HKEY_CURRENT_USER,HKEY_LOCAL_MACHINE\ SAM,HKEY_LOCAL_MACHINE\Security和HKEY_USERS\DEFAULT;其它所有配置单元使用最新的格式。

         大多数的配置单元的支持文件都在SystemRoot\ SYSTEM32 \Config目录。这些文件在用户每次登录时更新。在这些目录中的文件的文件扩展名,或在某些情况下,缺乏延伸的,表示数据所包含的类型。

Registry hive

Supporting files

HKEY_CURRENT_CONFIG

System, System.alt, System.log, System.sav

HKEY_CURRENT_USER

Ntuser.dat, Ntuser.dat.log

HKEY_LOCAL_MACHINE\SAM

Sam, Sam.log, Sam.sav

HKEY_LOCAL_MACHINE\Security

Security, Security.log, Security.sav

HKEY_LOCAL_MACHINE\Software

Software, Software.log, Software.sav

HKEY_LOCAL_MACHINE\System

System, System.alt, System.log, System.sav

HKEY_USERS\.DEFAULT

Default, Default.log, Default.sav

 

<7>注册表跟环境变量

系统环境变量:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Environment

用户环境变量:HKEY_CURRENT_USER\Environment

%SystemRoot%,%windir%,%temp%等变量的形式是%xxx%,其中%表示变量的意思。这些东西在注册表中也都能看到。例如%SystemRoot%表示Windows安装文件夹,如果系统是在C盘安装,那么就是C:\Windows,%windir%等同%SystemRoot%。

位置:在注册表的如下位置可以找到SystemRoot的值。HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion

参考文献:

http://msdn.microsoft.com/en-us/library/aa384187(VS.85).aspx

http://msdn.microsoft.com/en-us/library/ms724877(v=vs.85).aspx

Windows 注册表,布布扣,bubuko.com

Windows 注册表

标签:注册表文件位置   注册表重定向   注册表环境变量   注册表打开   syswow64   

原文地址:http://blog.csdn.net/ddupd/article/details/38562903

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!