关于C#压缩.accdb的问题

爱妃大大大 2014-12-25 04:16:44
大家好,正在写一个压缩数据库的功能。

上网搜索后,想用如下代码实现。

JRO.JetEngine x = new JRO.JetEngine();
x.CompactDatabase("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\\DQ数据库.accdb;Jet OLEDB:Engine Type=5;UserID=Admin;Password=;", "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\\temp.accdb;Jet OLEDB:Engine Type=5;UserID=Admin;Password=;");//第二个参数是用来存放压缩后数据库的
System.IO.File.Copy("D:\\temp.accd","D:\\DQ数据库",true);
System.IO.File.Delete("D:\\temp.accd");

已经在引用中添加了COM:Microsoft Jet and Replication Objects 2.6 Library

但是在运行时报错:“检索 COM 类工厂中 CLSID 为 {DE88C160-FF2C-11D1-BB6F-00C04FAE22DA} 的组件时失败,原因是出现以下错误: 80040154。”

我的系统是win7 64位。我已经将IIS中的“启用32位应用程序”设置为true。

麻烦大家帮忙看一下。谢谢了。
...全文
276 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
raychen_china 2016-09-30
  • 打赏
  • 举报
回复
楼主,时隔两年了,求赐教解决方法
爱妃大大大 2014-12-30
  • 打赏
  • 举报
回复
@Thundercracker 这个驱动程序已经装过了,还是报错
爱妃大大大 2014-12-30
  • 打赏
  • 举报
回复
@sp1234 改为X86后,提示“没有注册类”
thundercracker 2014-12-27
  • 打赏
  • 举报
回复
2007以后的Access数据库需要单独安装驱动程序,32位 和 64位 还不一样,反正我都装了 AccessDatabaseEngine.exe AccessDatabaseEngine_x64.exe 下载地址 http://www.microsoft.com/en-us/download/details.aspx?id=13255
  • 打赏
  • 举报
回复
引用 楼主 u011694258 的回复:
我的系统是win7 64位。我已经将IIS中的“启用32位应用程序”设置为true。
IIS 运行的好好的,不应该修改它的设置。
  • 打赏
  • 举报
回复
你自己的程序,不能使用 Any,不能使用 x64,需要 改为 x86。
华芸智森 2014-12-27
  • 打赏
  • 举报
回复
MDB的压缩. 估计是权限问题.
爱妃大大大 2014-12-26
  • 打赏
  • 举报
回复
求帮助,谢谢
爱妃大大大 2014-12-26
  • 打赏
  • 举报
回复
不要沉。谢谢大家。

110,537

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧