virtualstore

VirtualStore文件夹探究

正常情况下往这个文件夹里写文件需要管理员权限

但软件并没有触发UAC

可是下载完后文件夹里并没有视频

我用搜索C盘的方式发现视频被下载到C:\Users\用户名\AppData\Local\VirtualStore中去了

可能是为了避免触发UAC而建立的文件夹 我又试了别的软件 发现在c盘中的文件大多数写到了这个文件夹里

而我玩仙三的时候用注册表全开动画后

进入游戏动画并没有全开 可使用管理员权限打开后却全开动画了

我想大概是注册表里也有一个类似的VirtualStore

后来我发现它在HKEY_CURRENT_USER\Software\Classes\VirtualStore里

在这个项里修改后就可以全开动画了

我想VirtualStore大概类似于一个沙盘

windows建立它防止程序对重要文件进行修改 也避免了程序无权限而导致的错误

大家如果有一些导入注册表无效或软件文件丢失的情况 不妨参考一下

再补充一篇摘自 pcbeta 的文章

这个当权限不够时,保证兼容性的做法。
比如往program files 或某些系统目录要写入东西,会保存配置文件,权限不够,就会被重定向到这里。
比如往program files安装软件,一般安装程序会触发UAC提升权限,当然不会有问题。
但每次运行program files中安装的程序都触发UAC时不现实的,太烦人了,大多数程序运行时并不会触发UAC,处于受限模式,但往往很多软件运行后又会往自己目录下保存写配置,临时文件之类的,肯定没权限写入program files,所以为了运行不出错就被重定向了,骗过软件认为自己成功写入了,不至于出错。
你可以发现,这里保存的文件大多数是程序运行过后的一些配置或临时文件之类的。

而本来的目录下可能无法找到这些文件,但会出现一个兼容性文件夹,点了就可以跳到VirtualStore中的对应目录,一般开UAC的才会遇到这个,刚装好就关闭UAC就不会出现了。


这属于98开始,2000虽然有完善的权限级别,可惜习惯了人人管理员,等于摆设。
UAC逼开发者规范下,避免往系统目录写东西,配置最好放用户自己的appdata目录,尽量避免普通应用程序以管理员身份运行,除非程序的安装和修改一些系统配置才需要授权,这样才能根本上解决很多安全问题,否者人人管理员间谍流氓简直就是畅通无阻啊,随时可以对系统为所欲为,防不胜防。
不过为了兼容以前无数不规范的软件,才搞出个这么个东西。

仙剑奇侠传5作为2011年发布 软件应该有把存档往Appdata写的意识了吧,可惜还是往安装目录下的Save写,所以才意识到了VirtualStore这个问题