Die
GUID der CoClass hätte ich schon und auf die Idee den Pfad aus der Registry auszulesen
würde ich ja zurückgreifen... wenn da nicht die Tatsache wäre, dass wir unsere
ActiveX Plugins
nicht registrieren dürfen. Momentan arbeiten wir über eine Manifest-Datei, mit deren Hilfe wir die
Registrierung umgehen können. Jetzt ist es natürlich nahe liegend den Pfad aus der Manifest Datei
zu beziehen, doch der steht da nicht drin. Da Manifest-Dateien nicht mit Pfaden jeglicher Art umgehen
können, müssen Host-Anwendung, Plugins und Manifest Datei an einem Ort stehen.
Mit ExtractFilePath(ParamStr(0)) bekäme ich also schon den Pfad der Host-Anwendung heraus, der im Moment
jedenfalls noch der gleiche ist wie der der Plugins. Nun fehlt mir aber immer noch der Name der
OCX-Komponente.
Da ich nicht davon ausgehe, dass in Zukunft die OCX immer an der gleichen Stelle liegt, wie die Host-Anwendung,
habe ich es momentan so gelöst, dass ich den Pfad der OCX mit GetCurrentDirectory auslese und den OCX-Namen
hardcodiert dran hänge. Über diese Infos kann ich dann wie gehabt die Version auslesen.
Sehr sauber ist diese Lösung natürlich nicht.