欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Access数据库打包问题:“Microsoft.Jet.OLEDB.4.0provider没有

程序员文章站 2022-05-16 17:43:57
...

在VS2005下用C#写了一个简单的读取Access数据库的程序,打包,安装,32位机上能正常运行,64位机上始终出现“Microsoft.Jet.OLEDB.4.0provider没有在本地机器上注册”和“Microsoft.ACE.OLEDB.12.0provider没有在本地机器上注册”错误,导致程序不能运行。下

在VS2005下用C#写了一个简单的读取Access数据库的程序,打包,安装,32位机上能正常运行,64位机上始终出现“Microsoft.Jet.OLEDB.4.0provider没有在本地机器上注册”和“Microsoft.ACE.OLEDB.12.0provider没有在本地机器上注册”错误,导致程序不能运行。下面是我的解决步骤:

1 项目属性——生成——目标平台,选择x86,运行程序使其生效。如图:

Access数据库打包问题:“Microsoft.Jet.OLEDB.4.0provider没有

2 打包时“系统必备”,必备组件选项处选择前两项,安装位置处选择第二项,如图:

Access数据库打包问题:“Microsoft.Jet.OLEDB.4.0provider没有

3 开始生成安装包,生成完毕,安装包内文件有:两个文件夹和两个文件,如图:

Access数据库打包问题:“Microsoft.Jet.OLEDB.4.0provider没有

4 更改64位机的IIS属性,如图:

Access数据库打包问题:“Microsoft.Jet.OLEDB.4.0provider没有

5 将安装包拷贝到64位机上,运行setup.exe进行安装

6 安装完毕运行程序,程序正常运行,未出现异常。

至于出现dll未注册等异常的原因,大家可以参考网址:

http://social.msdn.microsoft.com/Forums/zh-CN/adonetzhchs/thread/518c3e0c-3cbf-4a3a-a0c7-b85ebcc656dc。