2

试图让 Advantage OLE DB Provider 的本地服务器版本在 64 位 Windows 7 机器上工作。安装了 64 位版本 10.00.0.3 版本并复制了我的应用程序。从 app 目录注册 adsoledb64.dll。我什么都得不到。也不写日志。我是否必须在 64 位机器上编译应用程序?非常困惑和沮丧。

4

1 回答 1

4

根据我从评论中收集到的信息,您的应用程序听起来好像是作为 32 位应用程序运行的。如果是这样,它将无法加载 64 位版本的 OLE DB 提供程序。该conn.Open();调用可能会导致如下错误:

The 'Advantage.OLEDB.1' provider is not registered on the local machine.

对此进行测试的一种方法是安装 32 位版本的提供程序以查看它是否有效。

或者,您可以考虑使用Advantage .NET 数据提供程序而不是 OLE DB 提供程序。从长远来看,使用本机数据提供程序而不是通过 OLE DB 可能会更简单。

于 2010-08-10T16:22:33.563 回答