64 位系统遇到未在本地计算机上注册 Microsoft.Jet.OLEDB.4.0

Posted on 2012-04-12 16:55  lpcas  阅读(566)  评论(0编辑  收藏  举报

 

引用:http://www.cftea.com/c/2011/11/ELYL7R3D9K1UB2JD.asp

     今天测试别人给的一个工具,用 .Net 写的程序,抛出异常:未在本地计算机上注册 Microsoft.Jet.OLEDB.4.0 提供程序,搞了老半天,不知道什么原因,后来搜过了一下,才发现解决问题的办法是如此简单:

     问题主要是由于代码是在32位机器上编译的,而要在我的64位机器上使用。

解决方法:

方法1:编译项目指定目标平台为 x86 就完了,不能用 Any CPU

工程属性 -> 生成 -> 配置管理器 -> 平台 -> 点击 Any Cpu 选项卡 -> 新建 -> 新建平台 ->X86

(Visual Studio 2010 为:工程属性 -> 生成 -> 常规 -> 目标平台 -> x86。Express 版本不具有目标平台选择功能。千一网络编辑注)

方法2:Web 应用程序的话,还可以这样解决:

在对应的 IIS 应用程序池中,“设置应用程序池默认属性”->“常规”->”启用 32 位应用程序”,设置为 True。

 

我用的方法2,解决了遇到的问题,感谢我所引用文章的那位同志。

Copyright © 2024 lpcas
Powered by .NET 9.0 on Kubernetes