Win2000下创建Ole对象来压缩Access97库,可是就是不行,请高手帮助(100分)

  • 主题发起人 主题发起人 dadachong
  • 开始时间 开始时间
D

dadachong

Unregistered / Unconfirmed
GUEST, unregistred user!
function DaoActive(var DaoObject:OleVariant):Boolean;
var
DaoObject:OleVariant;
begin
try
DaoObject:=GetActiveOleObject('DAO.DBEngine.35');
except
DaoObject:=CreateOleObject('DAO.DBEngine.35';

在98下可行,可是在2000下就是不行,不知为何,请高手帮忙
 
可能是DAO的版本在2000下与98下的不一样,你改一下试试:
try
DaoObject:=GetActiveOleObject('DAO.DBEngine.36');
// ^^
...
except
ShowMessage('Error!');
end;
对于Access97来说,它的访问接口是DAO3.5,对于Access2000则是DAO3.6
可能你的2000中只安装了DAO3.6而没有安装DAO3.5,这时你的代码就有问题了。
如果我上面的代码也不能运行的话,就是你的系统中没有安装DAO了,可以通过
安装Office2000或是到:
http://202.96.70.228/cakk/delphi/dbengine/dbengine.htm
下载DAO驱动来解决。
如果用DAO3.6压缩了数据库,则数据库会转换成Access2000的格式,要注意。
 
可是我必须在2000下压缩Access97的数据库,该如何是好?谢谢
 
在2000下看看注册表中是否注册了'DAO.DBEngine.35'
没有说明你没有安装,可以去下载一个,下面是一个网址
http://www.deneb.es/Descargas%5CDAODescarga.asp
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部