WCF和Access 95
首先,不要生气。我知道MS停止支持Access 95时出生的人现在都在上高中。我试图提供一条前进的道路 我在Win 8.1 64位计算机(VS 2013)上开发了一个WCF。当我的单元测试进行调用时,WCF需要查询数据库并返回数据集。我使用传统的dataAdapter.fill()调用来实现这一点。这导致本地计算机上未注册“Microsoft.jet.OLEDB.4.0”提供程序。错误。我在这个论坛上发现了几个帖子,上面说4.0驱动程序不能在64位应用程序中工作。因此,我将解决方案平台设置为“x86”,在项目属性中,我将平台设置为“活动(x86)”。当我将平台目标设置为“x86”并尝试运行时,我收到另一个错误“system BadImageFormatException…”,因此我必须将其切换回“Any”。错误仍然存在 接下来,我认为VS web服务主机是64位运行的。我在本地开发人员计算机上安装了IIS,并在那里设置了项目,并将应用程序池设置为启用32位application=true,无更改。然后我尝试将DLL移动到sysWOW64并在那里注册,但仍然没有成功。我试图用“/32bit+”参数设置corflags,但发现该文件没有头,因此无法设置。最后,我升级到了版本。12驱动程序,并更改为连接字符串,但得到几乎相同的错误,“Microsoft.ACE.OLEDB.12.0”提供程序未在本地计算机上注册WCF和Access 95,wcf,ms-access,x86,oledb,Wcf,Ms Access,X86,Oledb,首先,不要生气。我知道MS停止支持Access 95时出生的人现在都在上高中。我试图提供一条前进的道路 我在Win 8.1 64位计算机(VS 2013)上开发了一个WCF。当我的单元测试进行调用时,WCF需要查询数据库并返回数据集。我使用传统的dataAdapter.fill()调用来实现这一点。这导致本地计算机上未注册“Microsoft.jet.OLEDB.4.0”提供程序。错误。我在这个论坛上发现了几个帖子,上面说4.0驱动程序不能在64位应用程序中工作。因此,我将解决方案平台设置为“x
在这一点上,我愿意接受任何建议。在这一切的开始,我可能错过了一些小细节。提前感谢您的帮助。听起来您的WCF服务代码似乎正在64位领域中运行。您能让您的服务向您显示
IntPtr.Size*8
的结果以明确表示“32”或“64”位吗?它正在运行32位。现在我真的很困惑。