UAC文件和注册表操作虚拟化
来源:互联网 发布:php对象的使用 编辑:程序博客网 时间:2024/04/26 13:10
从vista开始microsoft推出了UAC机制,就是User Account Control。开启UAC机制之后,windows默认通过explorer启动的程序都是运行在标准用户权限下面,而不是管理员用户权限。标准用户权限下会限制用户的诸多操作,最需要我们程序员关注的就是对于文件和注册表的访问,但是在windows xp下,所有的用户都是管理,很多程序在设计之初,就只考虑了程序是运行在管理员权限下,如果这些程序直接运行到vista以上版本系统下,就会出现兼容的文件。microsoft为了保持对于旧的应用程序的兼容性,在标准用户权限下的应用程序,操作系统关键的文件和注册表,会进行了虚拟化,实际上是一种重定向。
文件操作虚拟化:重定位的目录%LocalAppData%\VirtualStore,虚拟化目录有:%ProgramFiles%, %ProgramData%, %SystemRoot%
例如:C:\Windows\Application.ini 重定位到 C:\Users\Markruss\AppData\Local\VirtualStore\Windows\Application.ini
注册操作虚拟化:重定位到HKEY_ CURRENT_USER\Software\Classes\VirtualStore
我们程序安装和更新的时候,都是需要在管理权限下执行,否则文件的安装和更新都会被虚拟化,导致安装和更新失败。
windows对于安装程序和程序更新做了自己的鉴别,如果系统认为是一个安装或者更新的程序,就会提示用户是否启用管理员权限。
我们在程序开发中要如何处理,请参考 http://hi.baidu.com/yefeng654321/item/a0d1e81c38cbfd603f87ced3
UAC参考文献:
1、Inside Windows Win7 User Account Control
2、Inside Windows Vista User Account Control
- UAC文件和注册表操作虚拟化
- 取消 virtualStore 注册表[启用和禁止 UAC虚拟化]
- UAC与数据虚拟化(低权限无法正常写系统目录和注册表)
- 文件和注册表操作
- Windows 开发之注册表操作-UAC
- 读写操作,文件和注册表
- BypassUAC------使用EVENTVWR.EXE和注册表劫持实现“无文件”UAC绕过
- 文件与注册表的虚拟化技术
- 12文件和注册表操作(1)
- (二十四)文件和注册表操作
- 文件和注册表操作(C#)
- 第12篇 文件和注册表操作
- C#高级编程-文件和注册表操作
- 第12课 文件和注册表操作
- 注册表虚拟化
- C#中关于文件读写操作和注册表操作
- 第十二讲__文件的操作和注册表的操作
- VC操作文件、注册表
- Spinner样式大全
- Java HashMap的使用
- STL中mem_fun和mem_fun_ref的用法 收藏
- 崭新的2013
- android recovery模式及ROM制作
- UAC文件和注册表操作虚拟化
- Ubuntu上nfs的安装配置
- iBatis应用--控制执行SQL时的超时时间
- BZOJ 1951: [Sdoi2010]古代猪文(Lucas定理 &&中国剩余定理&&费马小定理)
- Linux/UNIX环境如何阅读源代码
- ostream_iterator—C++
- iBatis应用--编译Oracle存储过程
- hdu 1596find the safest road--dijkstra
- 单例模式