ProgramData 和 AppData 有啥区别?

Posted

技术标签:

【中文标题】ProgramData 和 AppData 有啥区别?【英文标题】:What is the difference between ProgramData and AppData?ProgramData 和 AppData 有什么区别? 【发布时间】:2013-04-22 23:18:37 【问题描述】:

我需要为我的程序存储一些用户特定的配置数据。 Application Data/AppData(在用户目录中)和 ProgramData(在系统驱动器的根目录中)似乎都是放置它的合理位置。

程序数据和应用程序数据有什么区别,我应该使用哪个?

【问题讨论】:

【参考方案1】:

直截了当地说,ProgramData 包含非用户特定的应用程序数据。此数据将可供计算机上的所有用户使用。任何全局数据都应该放在这里。

AppData 文件夹包含特定用户的配置设置、下载的信息/文件。因此,例如,任何用户特定的偏好和配置文件配置都可以存储在 AppData 文件夹中。 AppData 文件夹进一步分为三个子文件夹Roaming -此文件夹包含可以随您的用户配置文件从一台计算机移动到另一台计算机的数据。本地 -此文件夹包含不会随您的用户配置文件移动的数据。LocalLow -您可以在此文件夹中放入低级访问信息,例如与在受保护模式下运行的网络浏览器相关的信息。 p>

您现在可以根据信息的类型来决定最好的存储位置。

参考链接:Windows CSIDL 和 AppData

【讨论】:

安装程序创建的日志文件应该放在哪里?这听起来像是特定于应用程序的。但这听起来也像是特定用户同时w.r.t。运行安装程序的用户(尤其是在安装过程中使用“仅为我安装”选项时)。为什么没有运行安装程序的用户会关心其对应的日志文件? 你对 Local 和 ProgramData 的定义听起来一样,你想澄清一下 备案;我偷了你的帖子并在这里使用它:***.com/questions/50758075/… ;-)【参考方案2】:

我认为您应该将所有用户特定文件放入 appdata,因为它位于

C:\Users\UserName\AppData

并且 Programdata 不是特定于用户的。 我认为,它可以用于在不同用户使用时共享您的程序的数据。

see this *** question

【讨论】:

以上是关于ProgramData 和 AppData 有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

windows 添加开始菜单

steam账号分国家地区吗 怎么看自己的账号是啥区

win7 系统盘下AppData文件夹中Local和Roaming分别有啥作用?

win7 系统盘下AppData文件夹中Local和Roaming分别有啥作用?

GPIOx_BSRR 这个寄存器的功能既有设置又有清除,为啥还要GPIOx_BRR这个呢?啥区

uipath各文件存放路径