【发布时间】:2014-05-21 22:25:47
【问题描述】:
我的应用程序使用 sqlite 数据库来存储用户的内容。对于重度用户,该数据库可以增长到 1 GB 以上。该数据库当前存储在 ApplicationData (%appdata%) 中,但相关文档表明它用于应该很小的漫游数据,例如应该跨会话持续存在的设置。其他一些选项:
LocalApplicationData:文档表明这是用于在用户注销时可能会删除的数据。
MyDocuments/Personal:我相信这也会漫游。
UserProfile:文档说“应用程序不应在此级别创建文件或文件夹”
对存储位置的一些要求:
- 用户特定(无公共区域)
- 非管理用户必须具有读/写权限
- 数据不应漫游(如 AppData\Roaming)
- 数据不得自动删除
非常感谢您对 Windows 系统上的此类位置提出任何建议。
【问题讨论】:
-
请注意,没有一个答案可以完全满足您的要求,原因很简单:可以配置一台计算机,以便 所有 本地磁盘上的用户特定数据,即,整个用户配置文件在用户注销时被删除。 (这通常在计算机被许多不同用户使用时完成,例如大学的学生机房。如果用户配置文件在注销时没有从磁盘中删除,我们很快就会用完磁盘空间。)跨度>