<?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[Funktion aus DLL aufrufen]]></title><description><![CDATA[<p>Hi, kann man aus einer DLL-Funktion eine andere Funktion im Programm aufrufen? Gibt es für DLLs sowas wie globale Variablen sodass ich auf Variablen aus der DLL zugreifen kann?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/190973/funktion-aus-dll-aufrufen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 01 Jul 2026 18:56:57 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/190973.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 28 Aug 2007 18:57:17 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Funktion aus DLL aufrufen on Tue, 28 Aug 2007 18:57:17 GMT]]></title><description><![CDATA[<p>Hi, kann man aus einer DLL-Funktion eine andere Funktion im Programm aufrufen? Gibt es für DLLs sowas wie globale Variablen sodass ich auf Variablen aus der DLL zugreifen kann?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1354056</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1354056</guid><dc:creator><![CDATA[Häcke]]></dc:creator><pubDate>Tue, 28 Aug 2007 18:57:17 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion aus DLL aufrufen on Tue, 28 Aug 2007 19:35:18 GMT]]></title><description><![CDATA[<p>Falsches Forum =&gt; WinAPI</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1354098</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1354098</guid><dc:creator><![CDATA[khfzdtrcvhj]]></dc:creator><pubDate>Tue, 28 Aug 2007 19:35:18 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion aus DLL aufrufen on Tue, 28 Aug 2007 20:05:37 GMT]]></title><description><![CDATA[<p><a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-190757.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-190757.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1354131</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1354131</guid><dc:creator><![CDATA[kagamin]]></dc:creator><pubDate>Tue, 28 Aug 2007 20:05:37 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion aus DLL aufrufen on Tue, 28 Aug 2007 20:38:56 GMT]]></title><description><![CDATA[<p>Dieser Thread wurde von Moderator/in <a href="http://www.c-plusplus.net/forum/profile-var-mode-is-viewprofile-and-u-is-14811.html" rel="nofollow">Tim</a> aus dem Forum <a href="http://www.c-plusplus.net/forum/viewforum-var-f-is-10.html" rel="nofollow">ANSI C</a> in das Forum <a href="http://www.c-plusplus.net/forum/viewforum-var-f-is-4.html" rel="nofollow">WinAPI</a> verschoben.</p>
<p>Im Zweifelsfall bitte auch folgende Hinweise beachten:<br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-39405.html" rel="nofollow">C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?</a></p>
<p><em>Dieses Posting wurde automatisch erzeugt.</em></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1354156</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1354156</guid><dc:creator><![CDATA[C++ Forumbot]]></dc:creator><pubDate>Tue, 28 Aug 2007 20:38:56 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion aus DLL aufrufen on Tue, 28 Aug 2007 21:35:53 GMT]]></title><description><![CDATA[<p>Guten Abend,</p>
<p>wo Ihr grade bei den DLL's seid:<br />
Gestern habe ich es geschafft Programmteile in eine DLL auszulagern. Ich kann also Funktionen aufrufen, die in der DLL definiert sind. (Sogar mit Parameterübergabe und returnvalue)</p>
<p>Nun die Frage:<br />
1. Ich müsste irgendwie Variablen in der DLL und in der eigentlichen main-Funktion gleichzeigignutzen.</p>
<p>2. Wenn es überhaupt möglich ist, möchte ich, dass meine DLL-Funktion eine andere Funktion im Programm triggert.</p>
<p>Schönen Abend weiterhin,<br />
Heinz S.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1354194</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1354194</guid><dc:creator><![CDATA[Heinz S.]]></dc:creator><pubDate>Tue, 28 Aug 2007 21:35:53 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion aus DLL aufrufen on Tue, 28 Aug 2007 21:40:07 GMT]]></title><description><![CDATA[<p>für erstens gibt es irgendwas mit sharedmemory oder sowas ( musst mal bei msdn oder im Petzold suchen )</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1354197</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1354197</guid><dc:creator><![CDATA[noha_39]]></dc:creator><pubDate>Tue, 28 Aug 2007 21:40:07 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion aus DLL aufrufen on Tue, 28 Aug 2007 21:50:23 GMT]]></title><description><![CDATA[<p>Heinz S. schrieb:</p>
<blockquote>
<p>1. Ich müsste irgendwie Variablen in der DLL und in der eigentlichen main-Funktion gleichzeigignutzen.</p>
</blockquote>
<p>Jo, das geht mit (für MS-Compiler, bei anderen Compiler müsstest Du nach den Befehlen gucken):</p>
<pre><code class="language-cpp">#pragma data_seg (&quot;Shared&quot;)
/* ...HIER VARIABLEN DEFININIEREN... */
#pragma data_seg ()
#pragma comment (linker, &quot;/section:Shared,RWS&quot;)
</code></pre>
<p>Heinz S. schrieb:</p>
<blockquote>
<p>2. Wenn es überhaupt möglich ist, möchte ich, dass meine DLL-Funktion eine andere Funktion im Programm triggert.</p>
</blockquote>
<p>Ähm, ein Programm X lädt eine DLL Y. Die DLL (Y) wird dann in den Adressraum des Programm (X) eingeblendet. Verstehe zwar nicht, was Dein Vorhaben bringen soll, aber dann muss in der DLL die Funktionsadresse bekannt sein. Das geht, Du kannst diese beim Aufruf einer Funktion ja übermitteln (als Beispiel).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1354203</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1354203</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Tue, 28 Aug 2007 21:50:23 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion aus DLL aufrufen on Tue, 28 Aug 2007 21:55:58 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>danke ersteinmal für die schnelle Antworten. Ich benutze einen anderen Compiler (Ni CVI). Der kennt das nicht, aber ich werde mal weitersuchen...</p>
<p>Warum ist das bei jedem Compiler anders? ist DLL nicht = DLL?<br />
Was nutz ihr für Compiler? Welche würdet ihr empfehlen bzw. welche sind die bekanntesten?</p>
<p>zur zweiten frage: Nehmen wir an das Programm X ruft die Funktion &quot;Dividieren&quot; mit den Parametern z1=5 und z2=0 auf. Die Funktion &quot;Dividieren&quot; in der DLL müsste durch Null dividieren. Das Hauptprogramm soll aber die Fehlermeldung ausgeben wenn die DLLFunktion die Funktion &quot;err()&quot; aufruft.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1354211</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1354211</guid><dc:creator><![CDATA[Heinz S.]]></dc:creator><pubDate>Tue, 28 Aug 2007 21:55:58 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion aus DLL aufrufen on Tue, 28 Aug 2007 21:59:06 GMT]]></title><description><![CDATA[<p>CodeFinder schrieb:</p>
<blockquote>
<p>Heinz S. schrieb:</p>
<blockquote>
<p>1. Ich müsste irgendwie Variablen in der DLL und in der eigentlichen main-Funktion gleichzeigignutzen.</p>
</blockquote>
<p>Jo, das geht mit (für MS-Compiler, bei anderen Compiler müsstest Du nach den Befehlen gucken):</p>
<pre><code class="language-cpp">#pragma data_seg (&quot;Shared&quot;)
/* ...HIER VARIABLEN DEFININIEREN... */
#pragma data_seg ()
#pragma comment (linker, &quot;/section:Shared,RWS&quot;)
</code></pre>
</blockquote>
<p>lol, das bewirkt, daß die Variable in einem Shard Bereich im Speicher liegt und von mehreren Prozessen, welche die DLL einblenden, gesehen werden kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1354215</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1354215</guid><dc:creator><![CDATA[lol@finder]]></dc:creator><pubDate>Tue, 28 Aug 2007 21:59:06 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion aus DLL aufrufen on Tue, 28 Aug 2007 22:39:44 GMT]]></title><description><![CDATA[<p>[quote=&quot;lol@finder&quot;][quote=&quot;CodeFinder&quot;]</p>
<p>Heinz S. schrieb:</p>
<blockquote>
<pre><code class="language-cpp">#pragma data_seg (&quot;Shared&quot;)
/* ...HIER VARIABLEN DEFININIEREN... */
#pragma data_seg ()
#pragma comment (linker, &quot;/section:Shared,RWS&quot;)
</code></pre>
</blockquote>
<p>wo baue ich das ein? inne DLL oder Programm?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1354232</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1354232</guid><dc:creator><![CDATA[Heinz S.]]></dc:creator><pubDate>Tue, 28 Aug 2007 22:39:44 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion aus DLL aufrufen on Wed, 29 Aug 2007 00:43:50 GMT]]></title><description><![CDATA[<blockquote>
<p>1. Ich müsste irgendwie Variablen in der DLL und in der eigentlichen main-Funktion gleichzeigignutzen.</p>
</blockquote>
<p>Dann pack die Variablen in die DLL und exportier die auch. Obwohl es normal nie nötig sein sollte Variablen zu exportieren - deutet fast immer auf unsauberes Design hin.</p>
<blockquote>
<p>2. Wenn es überhaupt möglich ist, möchte ich, dass meine DLL-Funktion eine andere Funktion im Programm triggert.</p>
</blockquote>
<p>Das machst du am besten über Callbacks. (Übergib einen Zeiger auf die Funktion in der EXE an die DLL, also als Parameter einer Funktion die in der DLL implementiert ist. Über den Zeiger rufst du die Funktion dann auf.)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1354253</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1354253</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Wed, 29 Aug 2007 00:43:50 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion aus DLL aufrufen on Wed, 29 Aug 2007 15:23:26 GMT]]></title><description><![CDATA[<p>lol@finder schrieb:</p>
<blockquote>
<p>[...]<br />
lol, das bewirkt, daß die Variable in einem Shard Bereich im Speicher liegt und von mehreren Prozessen, welche die DLL einblenden, gesehen werden kann.</p>
</blockquote>
<p>Hatte ihn so verstanden, dass er genau das wollte... .</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1354690</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1354690</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Wed, 29 Aug 2007 15:23:26 GMT</pubDate></item></channel></rss>