<?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[Allgemeine Frage zu DLLs]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich hab mein Problem aus dem Beitrag weiter unten in den Griff bekommen, aber nur indem ich meinen DLL-Header so aufgebaut habe:</p>
<pre><code class="language-cpp">#ifdef __cplusplus
extern &quot;C&quot; {
#endif

//hier die Funktion ShowInt

#ifdef __cplusplus
}
#endif
</code></pre>
<p>Jetzt stellt sich mir die Frage: Wieso brauche ich dieses extern &quot;C&quot; { }, damit der Zeiger auf die Funktion im Hauptprogramm nicht NULL ist? Kann ich die DLL an sich so ändern, dass ich das nicht brauche und es im Programm (wo ich sie dynamisch linke) trotzdem klappt?</p>
<p>Denn vorher hab ich mit einem Testprogramm herausgefunden, dass er zwar die DLL fand, aber mit GetProcAddress nie einen gültigen Zeiger gefunden hat.</p>
<p>greets</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/84237/allgemeine-frage-zu-dlls</link><generator>RSS for Node</generator><lastBuildDate>Mon, 13 Apr 2026 00:35:26 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/84237.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 28 Aug 2004 10:19:45 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Allgemeine Frage zu DLLs on Sat, 28 Aug 2004 10:19:45 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich hab mein Problem aus dem Beitrag weiter unten in den Griff bekommen, aber nur indem ich meinen DLL-Header so aufgebaut habe:</p>
<pre><code class="language-cpp">#ifdef __cplusplus
extern &quot;C&quot; {
#endif

//hier die Funktion ShowInt

#ifdef __cplusplus
}
#endif
</code></pre>
<p>Jetzt stellt sich mir die Frage: Wieso brauche ich dieses extern &quot;C&quot; { }, damit der Zeiger auf die Funktion im Hauptprogramm nicht NULL ist? Kann ich die DLL an sich so ändern, dass ich das nicht brauche und es im Programm (wo ich sie dynamisch linke) trotzdem klappt?</p>
<p>Denn vorher hab ich mit einem Testprogramm herausgefunden, dass er zwar die DLL fand, aber mit GetProcAddress nie einen gültigen Zeiger gefunden hat.</p>
<p>greets</p>
]]></description><link>https://www.c-plusplus.net/forum/post/593683</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/593683</guid><dc:creator><![CDATA[Johannes Maier]]></dc:creator><pubDate>Sat, 28 Aug 2004 10:19:45 GMT</pubDate></item><item><title><![CDATA[Reply to Allgemeine Frage zu DLLs on Sat, 28 Aug 2004 11:34:19 GMT]]></title><description><![CDATA[<p>Nachdem man C++ Funktionen überladen kann, werden da noch alle möglichen anderen Informationen zum Namen dazugeschrieben (name mangling). Das schaut dann z.B. so aus: _Z10FileExistsRK10AnsiString</p>
<p>Du kannst diese Namen schon verwenden, aber dann musst du GetProcAddress natürlich diesen komplizierten Namen übergeben. Und rausfinden z.B. mit dumpbin. Ich weiß allerdings nicht, ob dieses Name mangling bei allen VC++-Versionen gleich ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/593711</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/593711</guid><dc:creator><![CDATA[Ringding]]></dc:creator><pubDate>Sat, 28 Aug 2004 11:34:19 GMT</pubDate></item><item><title><![CDATA[Reply to Allgemeine Frage zu DLLs on Sat, 28 Aug 2004 11:38:14 GMT]]></title><description><![CDATA[<p>Also wenn ich extern &quot;C&quot; dazuschreibe, dann findet man im Hauptprogramm die Namen der Funktionen.<br />
Was ist denn der Unterschied zu extern &quot;C++&quot;? Würde es damit auch gehen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/593714</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/593714</guid><dc:creator><![CDATA[Johannes Maier]]></dc:creator><pubDate>Sat, 28 Aug 2004 11:38:14 GMT</pubDate></item><item><title><![CDATA[Reply to Allgemeine Frage zu DLLs on Sat, 28 Aug 2004 16:30:53 GMT]]></title><description><![CDATA[<p>ne geht extern c++ geht ned</p>
<p>aber mit extern c exportierte funktionen vertehen glaub die meisten programmiersprachen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/593983</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/593983</guid><dc:creator><![CDATA[Sovok]]></dc:creator><pubDate>Sat, 28 Aug 2004 16:30:53 GMT</pubDate></item><item><title><![CDATA[Reply to Allgemeine Frage zu DLLs on Sat, 28 Aug 2004 17:28:14 GMT]]></title><description><![CDATA[<p>OK Danke, hab mir jetzt auch in nem Buch nochmal angeschaut, was dieses extern &quot;C&quot; genau bedeutet <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/594045</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/594045</guid><dc:creator><![CDATA[Johannes Maier]]></dc:creator><pubDate>Sat, 28 Aug 2004 17:28:14 GMT</pubDate></item></channel></rss>