|
Wussten Sie...
...dass eine Anwendung (EXE, DLL, OCX usw.) ein von ihr verwendetes ActiveX-Control (OCX) automatisch registriert, wenn es im gleichen Verzeichnis wie die Anwendung liegt und bisher noch nicht registriert war?
Visual Basic fügt nämlich beim Kompilieren einer Anwendung auch den Namen der ausführbaren Datei eines ActiveX-Controls in den kompilierten Code ein. Wird das Control nicht gefunden, weil es nicht registriert ist, wird normalerweise eine Fehlermeldung wie diese angezeigt:
Bevor diese Fehlermeldung angezeigt wird, durchsucht Visual Basic allerdings das Verzeichnis, in dem sich die ausführbare Datei der Anwendung selbst befindet. Wird dort die Datei des vermissten Controls gefunden, wird es automatisch registriert. Die Anwendung wird ohne Fehlermeldung und problemlos fortgesetzt.
Allerdings sollte Sie dieser undokumentierte Mechanismus nicht davon abhalten, trotzdem ordentliche Installationsprogramme für Ihre Anwendung zu erstellen, die von dieser benötigte ActiveX-Controls sauber installieren und registrieren - selbst wenn die mitgelieferten ActiveX-Controls tatsächlich im Anwendungs-Verzeichnis und nicht, wie üblich, im Windows-System-Verzeichnis installiert werden sollen. Denn nur dann werden die Controls und ihre Registrierungen bei einer Deinstallation der Anwendung auch wieder entfernt, ohne im Anwendungs-Verzeichnis liegen zu bleiben (was dann meistens auch nicht entfernt werden kann) und ohne als Müll die Windows-Registrierung unnötig aufzublähen.
|