吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1360|回复: 12
收起左侧

[其他求助] 如何解决“未在本地计算机上注册”Microsoft.Jet.OlbDb.4.0“提供程序

[复制链接]
chen0918 发表于 2024-3-19 21:34
500吾爱币
打开一个程序,就显示以下内容:
应用程序中发生了无法处理的异常。如果单击”继续“,应用程序将忽略此错误并尝试继续。如果单击”退出“,应用程序将立即关闭。
未在本地计算机上注册”Microsoft.Jet.OleDb.4.0"提供程序。
以下是详细信息。
有关调用实时(JIT)调试而不是此对话框的详细信息,
请参见此消息的结尾。

************** 异常文本 **************
System.InvalidOperationException: 未在本地计算机上注册“Microsoft.Jet.OleDb.4.0”提供程序。
   在 System.Data.OleDb.OleDbServicesWrapper.GetDataSource(OleDbConnectionString constr, DataSourceWrapper& datasrcWrapper)
   在 System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString constr, OleDbConnection connection)
   在 System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject)
   在 System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup)
   在 System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
   在 System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
   在 System.Data.OleDb.OleDbConnection.Open()
   在 列车牵引计算.FormVehicleType.FillVehicleGrid()
   在 列车牵引计算.FormVehicleType.CmbVehicleType_SelectedIndexChanged(Object sender, EventArgs e)
   在 System.Windows.Forms.ComboBox.OnSelectedIndexChanged(EventArgs e)
   在 System.Windows.Forms.ComboBox.set_SelectedIndex(Int32 value)
   在 列车牵引计算.FormVehicleType.FormVehicleType_Load(Object sender, EventArgs e)
   在 System.Windows.Forms.Form.OnLoad(EventArgs e)
   在 System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   在 System.Windows.Forms.Control.CreateControl()
   在 System.Windows.Forms.Control.WmShowWindow(Message& m)
   在 System.Windows.Forms.Control.WndProc(Message& m)
   在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** 已加载的程序集 **************
mscorlib
    程序集版本: 2.0.0.0
    Win32 版本: 2.0.50727.9174 (WinRelRS6.050727-9100)
    基本代码: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
----------------------------------------
列车牵引计算
    程序集版本: 1.0.0.0
    Win32 版本: 1.0.0.0
    基本代码: file:///E:/Program%20Files%20(x86)/列车牵引计算教学版/系统文件/列车牵引计算.exe
----------------------------------------
System.Windows.Forms
    程序集版本: 2.0.0.0
    Win32 版本: 2.0.50727.9157 (WinRelRS6.050727-9100)
    基本代码: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    程序集版本: 2.0.0.0
    Win32 版本: 2.0.50727.9176 (WinRelRS6.050727-9100)
    基本代码: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    程序集版本: 2.0.0.0
    Win32 版本: 2.0.50727.9157 (WinRelRS6.050727-9100)
    基本代码: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Data
    程序集版本: 2.0.0.0
    Win32 版本: 2.0.50727.9176 (WinRelRS6.050727-9100)
    基本代码: file:///C:/Windows/assembly/GAC_64/System.Data/2.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Windows.Forms.resources
    程序集版本: 2.0.0.0
    Win32 版本: 2.0.50727.9157 (WinRelRS6.050727-9100)
    基本代码: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_zh-CHS_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
System.Xml
    程序集版本: 2.0.0.0
    Win32 版本: 2.0.50727.9157 (WinRelRS6.050727-9100)
    基本代码: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
mscorlib.resources
    程序集版本: 2.0.0.0
    Win32 版本: 2.0.50727.9174 (WinRelRS6.050727-9100)
    基本代码: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
----------------------------------------
System.Transactions
    程序集版本: 2.0.0.0
    Win32 版本: 2.0.50727.9157 (WinRelRS6.050727-9100)
    基本代码: file:///C:/Windows/assembly/GAC_64/System.Transactions/2.0.0.0__b77a5c561934e089/System.Transactions.dll
----------------------------------------
System.Data.resources
    程序集版本: 2.0.0.0
    Win32 版本: 2.0.50727.9157 (WinRelRS6.050727-9100)
    基本代码: file:///C:/Windows/assembly/GAC_MSIL/System.Data.resources/2.0.0.0_zh-CHS_b77a5c561934e089/System.Data.resources.dll
----------------------------------------

************** JIT 调试 **************
要启用实时(JIT)调试,
该应用程序或计算机的 .config 文件(machine.config)的 system.windows.forms 节中必须设置
jitDebugging 值。
编译应用程序时还必须启用
调试。

例如:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

启用 JIT 调试后,任何无法处理的异常
都将被发送到在此计算机上注册的 JIT 调试器,
而不是由此对话框处理。


请问该如何解决该问题呀?急!!!!

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Jupiter999 发表于 2024-3-19 22:03
Oledb.4.0在64位系统上不支持

方法一

C#使用OLEDB方式连接ACCESS时提示标题中的错误,这是因为没有安装64位的Jet40驱动,只需将项目平台改为X86即可。
例如:生成->配置管理器->平台->点击Any Cpu选项卡->新建->新建平台->X86。

如果原来的项目必须为X64,可将这部分功能新建一个X86项目,然后在原项目中调用X86项目的exe。

方法二

第一步,先安装

Microsoft Access Database Engine 2010 Redistributable           

http://www.microsoft.com/downloa ... 4-A44B-84B371EDE16D





第二步 修改连接

原来连接 Provider=Microsoft.Jet.OLEDB.4.0;Data Source=1.xls;Extended Properties="Excel 8.0;HDR=YES;IMEX=1"

修改为:

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=1.xls;Extended Properties="Excel 12.0;HDR=YES;IMEX=1"
Jupiter999 发表于 2024-3-19 22:09
原因是:Microsoft.Jet.OLEDB.4.0这个只能32位环境运行,服务器是64位。

方法 :更改IIS设置,启用32位应用程序,这样就可以兼容32位了。

 楼主| chen0918 发表于 2024-3-19 22:23
Jupiter999 发表于 2024-3-19 22:09
原因是:Microsoft.Jet.OLEDB.4.0这个只能32位环境运行,服务器是64位。

方法 :更改IIS设置,启用32位 ...

这个方法尝试过了已经。不顶用呀,哎
 楼主| chen0918 发表于 2024-3-19 22:24
Jupiter999 发表于 2024-3-19 22:03
Oledb.4.0在64位系统上不支持

方法一

方法二里面的修改连接怎么修改呀,这个不会的。。方法一看不懂。。我是小白,比较笨
ORSSR 发表于 2024-3-19 23:28
Microsoft.Jet.OLEDB.4.0只支持32位的系统,解决办法:生成->配置管理器->平台->点击Any Cpu选项卡->新建->新建平台->X86
Jupiter999 发表于 2024-3-20 13:46
chen0918 发表于 2024-3-19 22:24
方法二里面的修改连接怎么修改呀,这个不会的。。方法一看不懂。。我是小白,比较笨

Jupiter999 发表于 2024-3-20 13:47
本帖最后由 Jupiter999 于 2024-3-20 13:49 编辑
chen0918 发表于 2024-3-19 22:24
方法二里面的修改连接怎么修改呀,这个不会的。。方法一看不懂。。我是小白,比较笨

<img src="https://img2.imgtp.com/2024/03/20/o7PoGOhn.png" alt="pacmuvm155.png" title="pacmuvm155.png" />
Jupiter999 发表于 2024-3-20 13:50
Jupiter999 发表于 2024-3-20 13:53
chen0918 发表于 2024-3-19 22:23
这个方法尝试过了已经。不顶用呀,哎

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.完成之后,在IIS中web扩展应该会看到多出一个32位的asp.net,点击允许
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-13 01:38

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表