我有一个带有服务器的网络,并且连接了许多计算机。我在服务器上安装了一个软件,许多客户都可以访问和使用它。
现在我使用c#/Winforms
创建了一个报告工具。总之,它连接到Access DB并创建报告。并且网络上的每台PC都包含一个Access DB,因此我们提供该DB的路径,并为我们使用以下路径连接的PC创建报告:
\ WinPc \ Tmuser \数据库\ users.mdb
当WinPc
是计算机名称时,Tmuser
是包含数据库的pc上的共享文件夹。当我在man服务器上安装应用程序(c#/ Winform)时它可以连接到任何PC并生成报告,这非常适用。
但是当我把工具放在任何一台电脑上并在另一台电脑上给出Db的路径时,它会给出如下错误:
我无法弄清楚为什么会出现这个错误,因为当我在资源管理器中检查路径时,它会打开访问Db就好了。如果您有任何建议,请告诉我。
答案 0 :(得分:1)
问题是权限,它连接的PC太需要凭据来自另一台PC,而不是服务器所以它没有让它打开文件...将当前用户更改为domain account
工作
答案 1 :(得分:0)
如错误所示,数据库由另一个用户专门打开。
我会建议,因为你有很多可能尝试访问数据库的PC是制作一个服务器 - 客户端项目,所以每个客户端发送请求写一行到主服务器,服务器端在主服务器将采取这些请求并将其写入数据库,这样只有一台计算机将写入数据库,没有人会锁定数据库
另外,我可能没有看到你的代码,但我猜你忘了在某个时候释放数据库。使用流或连接时总是使用Using
语句