<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Anknüpfungspunkt für eine DLL oder TLB ohne Dokumentation finden und verwenden!?]]></title><description><![CDATA[<p>Hallo zusammen -</p>
<p>Ich bin relativ neu was das Einbinden von Bibliotheken in C++ Programme angeht. Daher hier meine Frage:</p>
<p>Ich habe eine DLL und eine .TLB sowie den Beispielcode zur Verwendung dieser Bibliothek mit VBA unter Excel. Ich möchte nun aber diese Bibliothek mit C++ verwenden und habe es trotz langer Suche nicht hinbekommen, Zugriff auf die in der DLL bzw. der .TLB definierten Klassen und deren Variablen und Funktionen zu erlangen.</p>
<p>Das Einbinden der .TLB in C++ funktioniert per</p>
<pre><code>#import &quot;C:\Programme\AspenTech\Aspen Custom Modeler 2006.5\bin\aspencustommodeler.tlb&quot; no_namespace, named_guids
</code></pre>
<p>gut (d.h. das Visual Studio Projekt kompiliert erfolgreich).</p>
<p>Ich habe nun ebenfalls in Visual Studio die bei der Kompilierung aus der .TLB Datei erstellte .TLH angeschaut, werde daraus aber leider nicht ganz schlau. Kann ich in dieser Datei ggf. schon sehen, wie ich auf die Typenbibliothek zugreifen kann?</p>
<p>Weiterhin habe ich die .TLB Datei mit Visual Studio geöffnet und kann damit im Objektbrowser die in der Biblitheko definierten Klassen inkl. deren Variablen und Funktionen anschauen.</p>
<p>Meine Vermutung ist, dass ich nun &quot;einfach&quot; in meinem Code eine neue Instanz einer der Klassen der Typenbibliothek erstellen muss und dann auf die Funktionen und Variablen zugreifen kann!? Nur: Wie erstelle ich eine neue Instanz einer Klasse? In verschiedenen Internetforen habe ich von &quot;CoCreateInstance&quot; oder einer Anweisung wie &quot;ApplicationPtr app(__uuidof(Application));&quot; gelesen. Mir fehlt aber die Ahnung, um zu wissen, was ich brauche bzw. was besser ist!?</p>
<p>Falls erwünscht kann ich auch noch den VBA Beispielcode einfügen, aber ich vermute, das hilft erstmal nicht viel!?</p>
<p>Danke schonmal vorab!</p>
<p>Jochen</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/249067/anknüpfungspunkt-für-eine-dll-oder-tlb-ohne-dokumentation-finden-und-verwenden</link><generator>RSS for Node</generator><lastBuildDate>Wed, 16 Sep 2026 18:33:35 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/249067.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 02 Sep 2009 11:51:11 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Anknüpfungspunkt für eine DLL oder TLB ohne Dokumentation finden und verwenden!? on Wed, 02 Sep 2009 11:51:11 GMT]]></title><description><![CDATA[<p>Hallo zusammen -</p>
<p>Ich bin relativ neu was das Einbinden von Bibliotheken in C++ Programme angeht. Daher hier meine Frage:</p>
<p>Ich habe eine DLL und eine .TLB sowie den Beispielcode zur Verwendung dieser Bibliothek mit VBA unter Excel. Ich möchte nun aber diese Bibliothek mit C++ verwenden und habe es trotz langer Suche nicht hinbekommen, Zugriff auf die in der DLL bzw. der .TLB definierten Klassen und deren Variablen und Funktionen zu erlangen.</p>
<p>Das Einbinden der .TLB in C++ funktioniert per</p>
<pre><code>#import &quot;C:\Programme\AspenTech\Aspen Custom Modeler 2006.5\bin\aspencustommodeler.tlb&quot; no_namespace, named_guids
</code></pre>
<p>gut (d.h. das Visual Studio Projekt kompiliert erfolgreich).</p>
<p>Ich habe nun ebenfalls in Visual Studio die bei der Kompilierung aus der .TLB Datei erstellte .TLH angeschaut, werde daraus aber leider nicht ganz schlau. Kann ich in dieser Datei ggf. schon sehen, wie ich auf die Typenbibliothek zugreifen kann?</p>
<p>Weiterhin habe ich die .TLB Datei mit Visual Studio geöffnet und kann damit im Objektbrowser die in der Biblitheko definierten Klassen inkl. deren Variablen und Funktionen anschauen.</p>
<p>Meine Vermutung ist, dass ich nun &quot;einfach&quot; in meinem Code eine neue Instanz einer der Klassen der Typenbibliothek erstellen muss und dann auf die Funktionen und Variablen zugreifen kann!? Nur: Wie erstelle ich eine neue Instanz einer Klasse? In verschiedenen Internetforen habe ich von &quot;CoCreateInstance&quot; oder einer Anweisung wie &quot;ApplicationPtr app(__uuidof(Application));&quot; gelesen. Mir fehlt aber die Ahnung, um zu wissen, was ich brauche bzw. was besser ist!?</p>
<p>Falls erwünscht kann ich auch noch den VBA Beispielcode einfügen, aber ich vermute, das hilft erstmal nicht viel!?</p>
<p>Danke schonmal vorab!</p>
<p>Jochen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1770832</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1770832</guid><dc:creator><![CDATA[jocheno]]></dc:creator><pubDate>Wed, 02 Sep 2009 11:51:11 GMT</pubDate></item></channel></rss>