有关用户账户控制(UAC
Microsoft  Windows Vista 里面引入了一种叫做 UAC(用户账户控制)的技术。 UAC的引入,最直接的影响就是将Administrator组成员的权限等级进行了剥夺,只有在显式的许可下,Administrator组成员才能获得完整地管理员权限,在大多数情况下,Administrator组成员的权限是被精简的。
 Windows Vista里面,UAC的引入有效的增加了Windows Vista的安全特性。在UAC的保护下,受制于权限的拦截,计算机病毒很难对整个系统进行破坏。相反,计算机病毒的作用范围被局限在单一用户环境里面。诱导用户绕过UAC保护的计算机病毒除外J
当一个应用程序以完整管理员权限运行的时候,其进程的权限是和在Windows XP 上一个管理员创建的进程的权限相符的。需要特别注意的是:在Windows Vista上,要想让一个进程获得完整的管理员权限,会碰到一个UAC提示警告信息。
UAC控制下,应用程序默认是不具备修改系统设置的权限的,即使这个应用程序是由一个隶属亍Administrators组成员的账户运行的。任何企图修改系统设置的操作在默认的运行权限下均会失败,返回ERROR_ACCESS_DENIED错诨。 系统设置内容主要包括: 
 
1) 修改HKEY_LOCAL_MACHINE 键以及所有的子键
2) 修改Program Files 目录及其子目录
3) 修改Windows 目录及其子目录
4) 执行只有完整管理员权限才能执行的操作,如操作服务、加载驱劢、直接读写磁盘物理扇区、修改系统时间等。
对于前3点内容,在Windows Vista里面,如果一个应用程序试图往上述目录、注册表键里面写入数据,均会失败。 
Microsoft 为了解决应用程序兼容性问题,引入了一种叫做“虚拟储存 ”的技术来缓解这种兼容性问题。
虚拟储存(Virtual Store)技术
虚拟储存技术,又名Virtual Store技术,是 Microsoft Windows Vista 里面引入的一种用于缓解由于UAC的引入而带来的兼容性问题的解决方案。这个技术是一种临时性的解决方案,在未来版本的Windows里面,Microsoft会取消这个支持。 
基本的原理是:当操作系统检测到一个应用程序在没有权限的情况下试图往HKLMProgram Files等地方进行文件写操作的时候,操作系统会将这些操作重定向到一个特别的地方,而不是真正去修改HKLMProgram Files等需要特别权限的地方。
高权限操作限制
默认情况下,Windows Vista下所有用户账户均处于UAC限制之下,在这种模式下,用户创建的用户进程默认是只有很低的权限的,这些由用户创建的进程由亍权限不够,是无法执行一些需要完整的管理员权限才能执行的操作,如
l   SERVICE_ALL_ACCESS 权限访问SCM
l   SCM 进行控制(如停止、开始服务,加载驱劢等)
l  删除Program Files Windows目录下的文件(如果权限丌够,会被自劢重定向到Virtual Store目录)
特殊的关键字
为了缓解由于UAC带来的兼容性问题,Microsoft Windows Vista里面对一些关键字进行了保留。当应用程序名字或者版本信息里面含有这些关键字,Windows Vista会自动的判定认为该应用程序需要较高的权限。当用户运行这些程序的时候,Windows 会自动激活UAC提示对话框询问用户是否需要提升权限。 这些关键字有:setupinstallupdate等(不区分大小写)。可以尝试一下把任何可执行文件改名为Install.EXEUpdate.EXESetup.EXE,然后再分别运行改名以后的程序,会立即看到UAC提示确认框。