我正在编写一个带有SDF数据库的SQL Compact数据库应用程序,我需要在用户的计算机上安装它。用户需要能够读取和写入数据库,并且数据库需要对所有用户可用。该应用必须以正常用户权限运行,并且无法禁用UAC。
将数据库放在用户计算机上的最佳位置在哪里?我曾认为c:\ProgramData
是首选位置,但检查其用户权限,我发现普通用户只有读取权限。所以,我正在寻找替代方案。谢谢你的帮助。
答案 0 :(得分:2)
我只将文件粘贴在(用户名)\ Documents中,如果它们是由用户直接打开或保存的,比如他们双击并通过资源管理器打开。鉴于它是SDF,我可能会把它放在%APPDATA% \(公司名称)\(产品名称)
答案 1 :(得分:2)
您应该始终在Application Data文件夹中放置用户可以自由修改的任何文件。在这种情况下,Common Application数据文件夹可供所有用户使用。这允许应用程序能够修改此文件,而无需提升权限。
这是获取Common Application Data文件夹路径的方法。
Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData)
答案 2 :(得分:1)
如果没有关于此问题的任何明确指导,我已将c:\Users\Public\Documents
作为数据文件的位置。如果这个文件有更好的位置,我肯定想听听它。在接受我自己的回答之前,我会将这个问题保持开放几天。