我有一个WinForms应用程序,我已经接pipe了支持,它是使用Visual Studio 2005与VB.Net构build的。 该应用程序使用Access数据库。 它作为一个独立的应用程序安装时运行良好,但应用程序的安装光盘也允许networking安装,这是我目前遇到的问题。
为了testingnetworking安装,我在我的服务器(Windows Server 2003 SP2)上创build了一个文件夹,并将Access数据库复制到此文件夹中。 我为这个文件夹创build了一个共享,并给每个人完全的权限。 然后在工作站上,我安装了应用程序,并将path指向数据库,如下所示:
\\ MYSERVER \ myshare的\ MYDB.MDB
(这里的安装步骤按照安装光盘上的说明进行安装)
我安装的工作站是Windows 7旗舰版。 当我运行该应用程序时,当应用程序尝试读取数据库文件时,会收到标题中给出的错误消息。 我已经确认,我可以写入服务器上的共享文件夹,所以我不认为这是一个权限问题。 此外,数据库文件根本没有被使用,所以绝对不是专门打开的。 任何人有任何想法是什么可能导致这个,我可以尝试做什么来得到它的工作?
更新:
我已经使用全新安装的Windows XP SP3testing了计算机上的工作站安装,并且可以毫无问题地访问数据库文件。 所以,我得到的这个错误似乎是特定于Windows 7的。在Windows 7上,Oledb驱动程序可能存在已知问题吗? 我的Windows 7版本,顺便说一句,是32位。
可能有这么多的东西,所以很难给出准确的答案。 不过,我有一个类似的问题,而且我写了一篇文章,我不想在这里复制:
也许这将有助于如果底层的问题是相同的(即使在我的情况下,这是一个ASP.NET应用程序)。 如果没有,至少会促进进程监视器,如果你还不知道。
如果没有“Microsoft ADO Ext 2.8 for DDL and Security”COM项目参考设置,Jet 4.0将无法打开Access文件。 要检查引用的状态,请执行:Project – > References – > COM。
其他重要的参考资料,使这项工作是:
“Microsoft ADO Data Control 6.0(OLEDB)”COM参考
“Microsoft Access 14.0对象库”COM参考
有时Access在你自己的机器上有一个未处理的MS Access进程时报告这个错误。 检查任务管理器的进程列表(而不是应用程序)。
尝试运行这些东西…