我的问题是,为什么程序将数据保存在AppData文件夹中,而不是保存在Program Files的安装文件夹中?他们实际上将所有本地数据存储在 AppData 文件夹中,还是可以将其存储在任何他们喜欢的地方?例如,离线游戏或浏览器。
文件夹本身的位置实际上回答了这个问题。但为了清楚起见,还是让我解释一下。
AppData 文件夹位于用户的文件夹中,例如:C:\Users\Username\AppData,而程序文件文件夹位于 C:\
这里最大的区别是权限。如果您的电脑上只有一个用户,那么该用户在任何地方都拥有所有权限,这可能没有意义。但是如果你有多个用户,那么它就开始有意义了。每个单独的用户在 C:\Users 中都有自己的文件夹,以及自己的 AppData 文件夹。这不仅意味着其他用户无权访问您的 AppData 文件夹,而且还允许一个程序只安装一次,但对每个用户都有设置。
例如,如果您有 Mozilla Thunderbird 或 Microsoft Outlook(它们是不了解两者的人的电子邮件客户端),您不会希望为每个用户一次又一次地安装该应用程序。您宁愿只安装一次应用程序,但每个用户都有不同的设置。因为并非每个用户都会拥有相同的电子邮件地址。
出于这个原因,AppData 存在。对于用户的设置。
第二个原因是安全。尽管 Program Files 可能是只执行任务且没有设置的程序的地方,但如果用户不是该 PC 上的管理员,则他们无法写入 Program Files 文件夹,因此程序本身根本无法进行更改。然而,在 AppData 中,用户始终有权在那里写入,即使他们不是管理员。因此,需要写入数据的程序,例如带有缓存的 Web 浏览器,必须使用 AppData 写入该缓存,否则用户每次启动程序时都会收到要求管理访问权限的 UAC 提示。
| 归档时间: |
|
| 查看次数: |
5560 次 |
| 最近记录: |