2011-03-04 85 views
0

我访问存储在共享位置的SQL Server CE文件dbLogs.sdf(全文权“所有人”)通过C#程序集的Windows下服务。SQL Server精简ADO.NET数据提供:是访问数据库文件不允许

当我调试在Visual Studio 2008中的服务,它访问没有任何问题.SDF文件,但是当我真正运行Windows服务,它抛出异常,当我尝试打开连接。错误的详细信息如下:

错误消息:不允许访问数据库文件。 [文件名 = \ 192.168.17.228 \共享\ dbLogs.sdf]

来源:SQL Server压缩ADO.NET数据提供

堆栈跟踪:在System.Data.SqlServerCe.SqlCeConnection.ProcessResults(的Int32 小时)在 System.Data.SqlServerCe.SqlCeConnection.Open(布尔 无声)在 System.Data.SqlServerCe.SqlCeConnection.Open() 在LogStat.GetLogDetails(字符串 LOGTYPE)在LogStat.ProcessLogStats()

我曾尝试与身份的用户名和密码验证模拟在system.web部分app.config下,但没有奏效。

但是,当我在一个控制台应用程序复制相同的代码,它的工作没有任何问题。

我是否需要提供一些其他的方式在窗口服务认证?

感谢提前:)

回答

0

您需要的帐户运行在Windows Servcie,有权访问该共享。

+0

感谢您的回复, 我已经通过在“属性 - >登录 - >登录为: - >此帐户”下的用户名和密码尝试了我的窗口服务,服务代码能够访问数据库文件。 但担心的是,为什么它不工作,甚至包含.SDF文件的共享文件夹都具有“Everyone”的全部权限 此外,即使我在处理文件时多次使用身份模拟器也不起作用在网络上。任何想法? – Pawan 2011-03-09 11:13:23

+0

一般情况下,通过网络访问一个SDF文件有限的支持,并且不会在4.0在所有的工作 – ErikEJ 2011-03-11 09:33:15

相关问题