如何在程序中检测当前的Win中是否已安装ADO??(100分)

  • 主题发起人 主题发起人 fatBaby
  • 开始时间 开始时间
F

fatBaby

Unregistered / Unconfirmed
GUEST, unregistred user!
在未安装ADO的win中,程序会象死机一样没反应
 
察看注册表hkey_localmachine/software/microsoft/dataaccess/version
下是mdac(ado)的版本号码
如windows me 的mdac version是2.50.4403.12
不安装mdac注册表无此项
 
这种方法啊?
有没有什么函数之类的?
 
我觉得MS弄的注册表很失败。就象一个垃圾桶,大家什么东西都可以往里放,又都不敢取
 
有没有办法啊?
 
找一个mdac装一下就好了!
 
怎么只有糨糊答案
 
研究一下关于注册表的函数即可!
推荐看<delphi4 从入门到精通>
 
win98以上都有 ado
 
Win98 可不一定有 ADO 的
Win2000 倒是都有了
用注册表的方式是最不保险的

 
try
adodatabase.connect;
except
showmessage('无ado');
end;
 
到M$找一个Component Checker tool : http://www.microsoft.com/data/download.htm#CCinfo

The Component Checker tool is designed to help you determine
installed version information and diagnose installation issues
with the Microsoft Data Access Components (MDAC). Component Checker
runs on the following operating systems: Microsoft Windows 95, Windows 98,
Windows NT 4.0, and Windows 2000. Component Checker has been updated to
include MDAC 2.6 data.

 
可以首先调用(try) ProgIDToClassID('ADODB.Command'),如果出错就是没有安装。
这个办法本质上可能和注册表类似,但总是系统调用,比自己读保险多了吧。

对于已经安装过ADO又删除的,就不知道是否仍然起作用了(和注册表类似),
不过MDAC似乎没有删除选项,因此应该够用了。
 
fatBaby:如果你还要继续讨论请定期提前你的帖子,如果不想继续讨论请结束帖子。
 
多人接受答案了。
 
后退
顶部