<?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[[DLL] Dll für alle]]></title><description><![CDATA[<p>Hi,</p>
<p>ich hatte letztens ein Problem mit meiner selbstgestrickten Dll. Aufgrund meiner Einstellung zur Kodeerstellung im VC8 konnte ich meine eigene DLL nicht mehr in meinen anderen Projekten verwenden. Das warf die Frage auf, inwieweit man überhaupt sprachübergreifende Dlls schreiben kann, wenn ich's nicht mal mit einer Sprache schaffe. <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>
<p>Nach ein bissl suchen hab ich dann folgende Anforferungen gefunden, zu den ich noch Fragen habe:<br />
- extern &quot;C&quot; verwenden<br />
- C - Schnittstelle<br />
- __stdcall verwenden (für bestimmte Sprachen)</p>
<p>Punkt C-Schnittstelle heisst für mich als C-Unwissender keine Referenzen, keine Klassen, keine Templates und keine Fkt. innhalb von Strukturen. Was gibt's da für C++-Programmierer zu beachten? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Zu den Aufrufkonventionen: Die scheinen sich von Sprache zu Sprache zu unterscheiden. So will z.B. Blitzbasic __cdecl, aber VB __stdcall (lt. Forum), also kann man keine allgemeine Lösung finden. Mich interessieren als Clients die Sprachen C# und Delphi. Welche Aufrufkonventionen benötigen C# und Delphi?</p>
<p>&lt;edit&gt;<br />
Bie meiner DLL hatte ich bei der DLL und bei dem Client eine unterschiedliche Runtime Library eingestellt. Kann man DLL unabhähgig von der benutzen RTL erstellen, so dass nicht alle Clients die selbe RTL verwenden müssen?<br />
&lt;/edit&gt;</p>
<p>Danke für Antworten und Hinweise,<br />
don_basto.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/143835/dll-dll-für-alle</link><generator>RSS for Node</generator><lastBuildDate>Tue, 14 Jul 2026 14:53:51 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/143835.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 12 Apr 2006 09:40:13 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [DLL] Dll für alle on Wed, 12 Apr 2006 09:51:25 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich hatte letztens ein Problem mit meiner selbstgestrickten Dll. Aufgrund meiner Einstellung zur Kodeerstellung im VC8 konnte ich meine eigene DLL nicht mehr in meinen anderen Projekten verwenden. Das warf die Frage auf, inwieweit man überhaupt sprachübergreifende Dlls schreiben kann, wenn ich's nicht mal mit einer Sprache schaffe. <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>
<p>Nach ein bissl suchen hab ich dann folgende Anforferungen gefunden, zu den ich noch Fragen habe:<br />
- extern &quot;C&quot; verwenden<br />
- C - Schnittstelle<br />
- __stdcall verwenden (für bestimmte Sprachen)</p>
<p>Punkt C-Schnittstelle heisst für mich als C-Unwissender keine Referenzen, keine Klassen, keine Templates und keine Fkt. innhalb von Strukturen. Was gibt's da für C++-Programmierer zu beachten? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Zu den Aufrufkonventionen: Die scheinen sich von Sprache zu Sprache zu unterscheiden. So will z.B. Blitzbasic __cdecl, aber VB __stdcall (lt. Forum), also kann man keine allgemeine Lösung finden. Mich interessieren als Clients die Sprachen C# und Delphi. Welche Aufrufkonventionen benötigen C# und Delphi?</p>
<p>&lt;edit&gt;<br />
Bie meiner DLL hatte ich bei der DLL und bei dem Client eine unterschiedliche Runtime Library eingestellt. Kann man DLL unabhähgig von der benutzen RTL erstellen, so dass nicht alle Clients die selbe RTL verwenden müssen?<br />
&lt;/edit&gt;</p>
<p>Danke für Antworten und Hinweise,<br />
don_basto.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1035765</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1035765</guid><dc:creator><![CDATA[don_basto]]></dc:creator><pubDate>Wed, 12 Apr 2006 09:51:25 GMT</pubDate></item><item><title><![CDATA[Reply to [DLL] Dll für alle on Fri, 14 Apr 2006 00:21:03 GMT]]></title><description><![CDATA[<p>Delphi ist Turbo Pascal und das hat __pascal als Aufrufkonvention, also die Parameter werden von Links nach Rechts auf den Stack gepushed.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1037232</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1037232</guid><dc:creator><![CDATA[BoredBoy]]></dc:creator><pubDate>Fri, 14 Apr 2006 00:21:03 GMT</pubDate></item><item><title><![CDATA[Reply to [DLL] Dll für alle on Sat, 15 Apr 2006 18:34:32 GMT]]></title><description><![CDATA[<p>Der Zugriff auf __stdcall - definierte DLL-Funktionen wird von fast allen Windows-Entwicklungssystemen irgendwie unterstützt.</p>
<p>Es gibt natürlich noch ein paar Sachen beim Entwurf der Schnittstelle:</p>
<p>- Speicher der im DLL alloziert wird, muß auhc im DLL wieder freigegeben werden<br />
- Andersrum darf kein Speicher des Aufrufers im DLL freigegeben werden<br />
- Das Name Mangling des Compilers mit extern &quot;C&quot; oder über -def - File unterdrücken<br />
- usw. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1038093</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1038093</guid><dc:creator><![CDATA[peterchen]]></dc:creator><pubDate>Sat, 15 Apr 2006 18:34:32 GMT</pubDate></item></channel></rss>