我已经在网上搜索了几个星期,但找不到任何答案或与我的问题相关的任何内容
问题是,我有一个使用 C# 制作的应用程序,用于从 mdb 文件加载数据。该应用程序运行得很好,因为现在,应用程序和 mdb 文件(对于数据库,使用 oledb)位于同一台计算机上,而不位于任何共享文件夹上。但是,一旦准备好在办公室部署它,应用程序和 mdb 文件需要位于共享文件夹中,以供多个用户使用,但客户端/用户 PC 没有安装 MS Access。
问题是我们无法在客户端 PC 上安装 ms access 或任何可再发行文件(我在 Access 过的大多数论坛/网站上看到的文件)。
客户端 PC 具有 .net 4.0
我的问题是:
- 它会起作用吗? (即使客户端 PC 上没有安装任何 ms Access 权限或可再发行文件,客户端 PC 也可以 Access/执行共享文件夹上的应用程序和 mdb 文件?)
- 如果这样不行,我可以通过哪些选项让客户端 PC 打开并运行保存在共享文件夹中的应用程序和 mdb 文件?
- 如果没有帮助,我如何使用可再发行文件编译我的应用程序,比如说一个 .dll 文件,该文件将帮助客户端 PC 在没有安装 ms access 的情况下打开应用程序?例如(app、mdb 和 .dll 位于同一共享文件夹中)
我真的希望并提前感谢您的答复。
最佳答案
如果您使用 OLEDB.NET,则无需安装 MS Access 客户端,即可在程序中使用 Access DB,不会出现任何问题。与您类似的问题已回答 here 。答案是正确的,使用 JET 无需客户端安装 Office 即可工作。 希望这对您有帮助!
有一些链接可以帮助您开始使用 JET,请注意,如果您使用通用名称 OLEDB,Google 会获得更好的结果:
http://msdn.microsoft.com/en-us/library/aa288452%28v=vs.71%29.aspx How to connect to a MS Access file (mdb) using C#? http://www.dscripts.net/2009/01/20/connect-to-microsoft-access-mdb-database-using-csharp/ http://msdn.microsoft.com/en-us/library/5ybdbtte%28v=vs.71%29.aspx OLEDB connection to Access Database (accdb)
编辑: 对我链接的答案的评论询问 JET 是否可以与 MS2010 一起使用。根据我的经验,答案是肯定的。
关于c# - 应用程序在客户端上没有 MS Access 权限的情况下 Access 共享文件夹上的 mdb 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13773989/