0

我试图从 ASP.NET aspx 页面 (C#) 连接到访问数据库,但收到错误消息:

'Microsoft.Jet.OLEDB.4.0' 提供程序未在本地计算机上注册。

经过一番研究,我怀疑这是因为服务器是 64 位的,并且与访问数据库交互的 Jet 驱动程序不支持 64 位。以前的解决方案建议要么强制 web 应用程序以 32 位模式运行,而不是“任何 cpu”,要么升级到服务器上的驱动程序的 64 位版本。问题是我没有对服务器的直接管理员访问权限,只有文件夹访问权限来编辑文件(包括 web.config)。所以我的问题是.. 是否可以仅通过 web.config / aspx 文件中的设置强制脚本以 32 位模式运行?(即,没有服务器/IIS 更改)否则将不得不与官僚机构作斗争才能对服务器进行更改;-)

谢谢大家

4

1 回答 1

1

您可以尝试在 applicationPoolDefaults 上设置enable32BitAppOnWin64属性:

可选的布尔属性。

如果为 true,则允许 32 位应用程序在运行 64 位版本 Windows 的计算机上运行。

默认值为假。

<applicationPools>
   <add name="DefaultAppPool" />
   <applicationPoolDefaults enable32BitAppOnWin64="True">
   </applicationPoolDefaults>
</applicationPools>

我承认我自己从未尝试过,但它应该可以工作。

于 2012-09-05T06:09:15.087 回答