64位IIS中使用Microsoft.Jet.OLEDB.4.0操作EXCEL及ACCESS

说明:在开发中,常常会操作EXCEL文件,但64位系统有些变化,本文有解决方案,特收藏之。


原题:设置64位机器上的IIS(IIS6/IIS7)兼容32位程序  

由于64位操作系统不支持Microsoft OLE DB Provider for Jet驱动程序,也不支持更早的Microsoft Access Driver (*.mdb)方式连接。所以用于 Access 和 Excel 数据库的 Microsoft OLE DB Provider for Jet 在 64 位版本中不可用,也就是说,如下两种连接字符串都已经无法正常工作了:

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.mappath(db)

"driver=Microsoft Access Driver (*.mdb);DBQ="&Server.MapPath(db)

既然这样,就只能使用一个办法,将IIS的运行环境设置为32位:

IIS6上的做法:

1.命令行键入:

cscript.exe %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1

即设置IIS6允许32位程序运行在64位机器上

2.重新注册.net FrameWorks

%SYSTEMROOT%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i

3.完成之后,应该会看到多出一个32位的asp.net,如下图:

转:64位IIS(IIS6/IIS7)上运行Jet.Oledb的设置 - 心通CTC数字校园 - CTC数字校园研究所

将其设置为允许,缺点:这样会使整个IIS上的所有站点都以32位兼容方式运行

       然后再运行一下:%SYSTEMROOT%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i

      这样就可以跑32位的程序了。

不过在IIS7上的做法要简单很多:

应用程序池,高级设置-->允许32位应用程序,如下图:

转:64位IIS(IIS6/IIS7)上运行Jet.Oledb的设置 - 心通CTC数字校园 - CTC数字校园研究所 

最好专门针对兼容32位应用驱动新建一个应用池。

                                                                                          (源文出处:http://guojun2sq.blog.163.com/blog/static/6433086120101128102545619/)
<think>好的,用户想要下载并安装Microsoft Jet OLEDB 4.0驱动程序。首先,我需要回顾一下相关的知识。根据提供的引用,特别是引用[3],Microsoft Jet OLEDB 4.0通常用于旧版的Access数据库和Excel文件,但微软已经不再提供官方下载了。不过,用户可能需要通过其他途径获取。 接下来,用户可能使用的是64系统,因为在引用[2]中提到,64系统默认不支持Jet 4.0,可能需要调整应用程序为32模式,或者安装补丁。但用户这里的问题是关于下载和安装驱动程序本身。 根据引用[3],Microsoft.ACE.OLEDB.12.0的官方下载链接是提供的,而Jet 4.0的驱动可能已经包含在较旧的Office版本中,比如Office 2003或2007。所以,用户可能需要安装这些旧版本,或者寻找可再发行组件包。不过需要注意,微软可能已经停止支持,所以需要提醒用户潜在的安全风险。 另外,引用[4]提到修改注册表来解决问题,这可能是在安装后的配置步骤,但用户目前的问题是安装驱动,所以可能暂时不需要涉及注册表修改。 现在需要将步骤整理出来,确保用户能够按照正确的顺序操作。首先建议尝试安装Microsoft Access Database Engine 2010 Redistributable,因为它可能包含兼容的组件。如果不行,再考虑其他方法,比如启用32应用程序配置或寻找旧版安装包。 需要注意,用户可能不太熟悉技术细节,所以步骤需要详细但清晰。同时,必须提醒用户关于使用旧驱动可能带来的安全问题,建议优先使用更新的ACE驱动。 最后,生成相关问题时要涵盖常见的问题,比如64系统下的解决方法,替代方案,以及错误处理等。</think>### Microsoft Jet OLEDB 4.0 驱动程序的下载与安装步骤 #### 1. **官方渠道的限制** Microsoft Jet OLEDB 4.0 是较旧的数据库引擎,**微软已不再提供独立安装包**。它通常随以下软件自动安装: - Microsoft Office 2003/2007(32版本)[^3] - Windows XP/Server 2003 及更早系统组件 #### 2. **替代解决方案** 若需兼容旧版Access/Excel文件,建议优先使用更新的 **Microsoft Access Database Engine 2010 Redistributable**(包含ACE.OLEDB.12.0驱动): 1. 访问官方下载页面: [Microsoft Access Database Engine 2010 Redistributable](https://www.microsoft.com/en-us/download/details.aspx?id=54920) [^3] 2. 选择对应版本(需与应用程序版本一致) 3. 安装后通过连接字符串 `Provider=Microsoft.ACE.OLEDB.12.0` 调用 #### 3. **强制获取Jet 4.0的方法** 若必须使用Jet 4.0: - **方法一**:安装旧版Office 寻找Office 2003/2007安装介质(需注意安全风险,旧软件无官方支持) - **方法二**:通过Windows更新补丁 部分系统可通过以下补丁间接获取: - KB4040949(Windows 7) - KB4048957(Windows 8.1) #### 4. **64系统特别注意** - 若应用程序为32:需设置IIS/程序池启用32兼容模式[^2] - 若需直接调用64驱动:需使用ACE.OLEDB.12.0并修改注册表(风险较高)[^4] #### 5. **连接测试** 安装后可通过以下C#代码测试: ```csharp string connStr = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\test.mdb;"; using (OleDbConnection conn = new OleDbConnection(connStr)) { conn.Open(); // 成功则驱动已生效 } ``` --- ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值