繁体   English   中英

用应用程序存储本地数据库的最佳位置?

[英]The best place to store a local database with an application?

我想知道在本地存储数据库的最佳位置在哪里? 我有一个从Appdata / Roaming读取数据库(SQLITE)的应用程序。 但是,这在Windows 7上不起作用,但在Windows 8-10上可以正常运行。我相信这与权限有关,并且需要一些额外的知识。 我正在使用inno创建安装程序,并且在尝试访问Windows 7上的数据库时由于程序崩溃而出现问题

从Windows 7开始用于存储用户(即,允许数据用户读写的数据)漫游(即,如果用户远程登录时可供用户使用的数据)的准则为C:\\ Users \\ username \\ AppData \\漫游。 指南是在此目录中创建一个具有唯一名称(例如GUID)的文件夹,并将用户漫游数据存储在该文件夹中。 您可以使用Path.Combine( Environment.GetFolder(Environment.SpecialFolder.ApplicationData), "a unique string")在.NET中为当前用户获取此目录的路径。

所有用户都应有权访问自己的用户目录。 应该从相关的API和环境变量(如此处)获得此信息 CSIDL_APPDATA在您要针对其进行编码的所有OS版本上均应有效。 您的数据库可能不需要漫游,因此CSIDL_LOCAL_APPDATA可能是最佳选择,而我将使用该选择。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM