我正在开发一个SQL应用程序,我的安装项目之一就是将一个SDF文件复制到用户的c:\ProgramData文件夹中。但是,当应用程序在用户的机器上运行时,我会得到以下错误:
System.Data.EntityException:基础提供程序在打开时失败了。-> System.Data.SqlServerCeException:不允许访问数据库文件。文件名= c:\ProgramData\Foresight Systems\Systems Demo\LocalData.sdf
我很困惑是什么导致了这个错误。c:\ProgramData不是这类文件的首选位置吗?在我的安装项目中,我需要做些什么才能让它起作用?谢谢你的帮助。
发布于 2010-09-21 00:58:07
也许有几件事要检查(?):
的UAC访问权限。
发布于 2010-09-21 19:34:35
我接受了P.坎贝尔的回答,因为他确认了安全问题。我回头看了一下c:\ProgramData文件夹的Security,发现User组只有这个文件夹的读取权限。所以,它可能不是放置我的SDF文件的最佳地点。我将单独提出一个关于把文件放在哪里的问题。
https://stackoverflow.com/questions/3756582
复制相似问题