Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi ActiveX-DLL importieren (https://www.delphipraxis.net/151618-activex-dll-importieren.html)

TObject 25. Mai 2010 15:48


ActiveX-DLL importieren
 
Hallo zusammen,

ich möchte in Delphi 5 eine ActiveX-DLL importieren. Also gehe ich im Menü unter "Komponente" auf "ActiveX importieren".
Leider erscheit die ActiveX-DLL nicht in der Liste. Also versuchte ich es mit regsvr32 flSigCapt.dll (meine DLL). Nachdem sie auch dann (System neugestartet) nicht in der Liste erschien, versuchte ich, sie manuell über den Button "Hinzuzufügen..." hinzuzufügen. Wenn ich dies mache, scheint sich zwar die Liste zu aktualisieren, die DLL steht aber immer noch nicht drin.

Der Softwarehersteller empfiehlt mir aber, genau diese DLL zu importieren, damit ich ein bestimmtes Objekt nutzen kann.

Hat jemand von Euch dieses Problem schon mal gehabt oder kann mir sagen, woran das liegen könnte?
Vielen Dank!

Gruß,
Dietmar

mkinzler 25. Mai 2010 16:01

Re: ActiveX-DLL importieren
 
Schon mal versucht direkt aus der Dll zu importieren?

shmia 25. Mai 2010 17:40

Re: ActiveX-DLL importieren
 
Zitat:

Zitat von TObject
ich möchte in Delphi 5 eine ActiveX-DLL importieren. Also gehe ich im Menü unter "Komponente" auf "ActiveX importieren".

Du musst über Projekt -> Typbibliothek importieren... gehen.
Bei Komponente->ActiveX importieren... werden nur Typbibliotheken berücksichtigt, die mindestens ein ActiveX-Control enthalten.
Ein ActiveX-Control (=visuelles Steuerelement) unterstützt eine ganze Latte von verschiedenen vordefinierten Interfaces und muss ausserdem in einer bestimmten Component Category registriert sein.

TObject 26. Mai 2010 10:03

Re: ActiveX-DLL importieren
 
Danke, über "Projekt" -> "Typbibliothek importieren" hat es funktioniert.

Trotzdem verstehe ich den Unterschied nicht. Woran erkenne ich denn, ob eine Typbibliothek mindestens ein ActiveX-Control hat? In beiden Fällen habe ich doch in meiner Komponentenpalette ein neues Symbol, welches doch ein ActiveX-Control darstellt, oder?

VG
Dietmar

shmia 26. Mai 2010 13:07

Re: ActiveX-DLL importieren
 
Zitat:

Zitat von TObject
Trotzdem verstehe ich den Unterschied nicht. Woran erkenne ich denn, ob eine Typbibliothek mindestens ein ActiveX-Control hat?

Der Ersteller der ActiveX DLL legt dies fest indem er eine oder mehrere Klassen einer sogenannten Component Category zuordnet.
Mit dem Tool OLE/COM Viewer kann man sich diese Kategorien anzeigen lassen:
http://www.zdnet.de/net_fuer_entwick...45-71935-1.htm
Zitat:

Zitat von TObject
In beiden Fällen habe ich doch in meiner Komponentenpalette ein neues Symbol, welches doch ein ActiveX-Control darstellt, oder?

Delphi ist in der Lage eine CoClass in einer Komponente zu verpacken (Komponenten-Wrapper).
Bei einem ActiveX-Control muss man diese "Verpackung" verwenden.

Bei ganz normalen ActiveX Objekten kann man auf diese Komponenten-Wrapper auch verzichten.
Beim Import der Typbibliotek entfernt man dazu den Haken bei "Komponenten-Wrapper generieren".

TObject 28. Mai 2010 09:16

Re: ActiveX-DLL importieren
 
Ok, danke, so langsam kommt Licht ins Dunkel ;)

VG


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:05 Uhr.

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