Autor Beitrag
Cashels
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 167



BeitragVerfasst: So 20.10.02 17:58 
Hallo,

wer kennt eine einfache Möglichkeiten zu prüfen, ob die MS Access (MDAC) Treiber auf dem System installiert sind? Ich will vermeiden dass ein von mir geschriebenes Programm gestartet werden kann, wenn kein Access vorhanden ist. Am besten ohne in einem try...except Block eine Verbindung zu prüfen, da hiermit nicht sicher gestellt ist, von woher eine eventuelle Fehlverbindung herrührt.

Hat einer eine Idee :?: :?:

Gruss,
Tom
SvenL
Hält's aus hier
Beiträge: 9



BeitragVerfasst: Di 22.10.02 11:51 
Entschuldige bitte, wenn das nicht genau das ist was Du suchst, aber vieleicht kannst Du Dir hieraus etwas zusammenbasteln!??

Regist:=TRegistry.create;
Regist.RootKey:=HKEY_CURRENT_USER;
//Versuchen Key zu setzen, wenn nicht vorhanden, anlegen
Regist.OpenKey('SOFTWARE\ACCESS\........',TRUE);
Cashels Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 167



BeitragVerfasst: Di 22.10.02 13:33 
Danke SvenL,

dieser Schlüssel sagt leider nix drüber aus, ob der Datenbanktreiber installiert ist :cry: . Den gibts bei mir z.b. gar nicht, trotzdem läuft Access... Ich suche eigentlich auch nicht ne Überprüfung ob das ganze Paket MSSacces installiert ist, sondern lediglich ob MDAC drauf ist damit ich über ADO die Datenbank ansprechen kann.

Gruss,
tom
Cashels Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 167



BeitragVerfasst: Sa 26.10.02 09:40 
Hallo,

ich glaub das Problem gelöst zu haben. Für diejenigen die ähliches suchen, hier der Code.
ausblenden Quelltext
1:
2:
3:
4:
uses ADODB ;
...
   Providers := TStringList.create ;
   GetProviderNames(Providers);

Providers liefert eine TStringList aller installierten ADO Provider. Bei Access muss in dieser Liste Microsoft.Jet.OLEDB.4.0 auftauchen.

Gruss,
Tom