Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi ActiveX Control nicht installiert -> Fehler (https://www.delphipraxis.net/45097-activex-control-nicht-installiert-fehler.html)

chaozz 29. Apr 2005 15:39


ActiveX Control nicht installiert -> Fehler
 
Moin Leute!

Ich benutze in meinem Programm ein ActiveX Control welches ich über die Delphi in die IDE importiert habe. Nun ist es aber so, daß dieses Control nur bei einigen Kunden installiert ist, bei anderen nicht. Das ActiveX wird in Windows registriert wenn man die Treiber des Geräts installiert, ist dies nicht geschehen gibbet auch kein registriertes ActiveX Control. Starte ich nun in der Application das Formular mit dem Control kommt natürlich wie erwartet die Fehlermeldung 'Klasse nicht registriert'.

Wie kann ich diese Fehlermeldung unterdrücken wenn das Gerät und damit das ActiveX-Control nicht installiert sind?

Meine erste Idee ist in die Registry zu schauen obs registriert ist, wenn ja die Komponente dynamisch per code zu erzeugen, wenn nein nicht erzeugen.

Gibt es auch andere Wege? Würde nähmlich die Komponente gerne per IDE aufs Formular klatschen, sind doch einige Einstellungen zu machen, ist per code mühsam...

Oohh... gleich is ja schon Feierabend u. Wochenende!
Mannmannmann... wo bleibt nur die Zeit...

Gruß
ChaozZ

MathiasSimmack 29. Apr 2005 16:22

Re: ActiveX Control nicht installiert -> Fehler
 
Zitat:

Zitat von chaozz
Meine erste Idee ist in die Registry zu schauen obs registriert ist, wenn ja die Komponente dynamisch per code zu erzeugen, wenn nein nicht erzeugen.

Das ist eine gute Idee, die ich selbst auch nutze. Hier im Forum treibt sich dazu die wirklich geniale Funktion eines echt netten DP-Users herum. :stupid:

Du musst "nur" in Erfahrung bringen, welche GUID diese ActiveX-Komponente benutzt. Aber das sollte recht einfach sein. Diese GUID müsstest du in der Registry finden (Schlüsselaufbau, s. Funktion), und dort sollte der Verweis zu einer Datei (meist DLL) stehen. Auf der Grundlage funktioniert die Sache: Die Funktion sucht nach dem Schlüssel, sucht nach dem Standardwert und guckt, ob die Datei existiert. Funktionierte für meine Tools bisher bei XML 3, XML 4, Help 2.0-System.

chaozz 29. Apr 2005 16:32

Re: ActiveX Control nicht installiert -> Fehler
 
Alles klar dann werde ichs nach deiner Methode machen wenn mir nix anderes übrig bleibt. Hätte gern die Properties der Komponente schon zur Designzeit gesetzt, aber egal. Das bissle mehr tippen geht nu auch noch...

Aber erst Montag, nu is ersma WOCHENENDE!!!

Danke und Gruß
ChaozZ

chaozz 29. Apr 2005 17:10

Re: ActiveX Control nicht installiert -> Fehler
 
Habs doch noch eben ausprobiert und bekomme die Fehlermeldung:

'undefinierter Bezeichner StringFromCLSID'

welche unit muß ich einbinden?


Schönes Wochenende
ChaozZ

MathiasSimmack 29. Apr 2005 17:24

Re: ActiveX Control nicht installiert -> Fehler
 
Puh, aus´m Kopf weiß ich das gerade nicht. Aber das steht in meiner Unit, wo die Funktion drin steckt:
Delphi-Quellcode:
uses
  Windows, ShlObj, ActiveX;
Eine der 3 wird´s wohl sein. Sorry. :oops:


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:56 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz