我想知道在本地存储数据库的最佳位置在哪里?我有一个从Appdata/Roaming读取数据库(SQLITE)的应用程序。然而,这在Windows7上不起作用,但在Windows8- 10上运行得很好。我相信这与权限有关,需要一些额外的知识。我正在用inno创建一个安装程序,当我试图访问windows7上的数据库时,程序崩溃了。
发布于 2015-12-22 04:40:07
用于存储从Windows7漫游的用户(即允许用户读取和写入的数据)(即用户远程登录时可用的数据)的guideline为C:\ users \username\AppData\Roaming。指导原则是在此目录中创建一个具有唯一名称的文件夹,并将用户漫游数据存储在该文件夹中。您可以使用Path.Combine( Environment.GetFolder(Environment.SpecialFolder.ApplicationData), "a unique string")在.NET中获取当前用户的此目录的路径。
发布于 2015-12-22 04:35:15
所有用户都应该有权访问自己的用户目录。应该从相关的API和环境变量中获取,比如here。CSIDL_APPDATA应该在您编码所针对的所有操作系统版本中有效。您的数据库可能不需要漫游,所以也许CSIDL_LOCAL_APPDATA是最好的选择,也是我会使用的。
https://stackoverflow.com/questions/34402438
复制相似问题