<?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[AnsiStrings in DLLs]]></title><description><![CDATA[<p>Ich habe mal ne kurze Frage zu Dlls. (ums gleich zu sagen ich habe das tutorial gelesen !).</p>
<p>(1.)<br />
Kann ich <strong>in</strong> den DLLs grundsätzlich keine AnsiStrings verwenden wenn ich die Weitergabe der MEMMGR.LIB und BORLNDMM.DLL vermeiden möchte, oder bezieht sich das ausschließlich auf die <strong>Übergabe</strong> von AnsiStrings in Funktionsparametern ?</p>
<p>(2.)<br />
Vorausgesetzt ich kann innerhalb der DLL AnsiStrings verwenden:<br />
Wenn ich einer Funktion in einer DLL eine Struktur übergeben möchte die AnsiStrings enthält, kann ich dann das Problem vermeiden in dem ich nur einen Zeiger auf diese Strukur übergebe ?</p>
<p>Mfg Mav</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/183245/ansistrings-in-dlls</link><generator>RSS for Node</generator><lastBuildDate>Sun, 16 Aug 2026 02:09:42 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/183245.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 03 Jun 2007 10:13:27 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to AnsiStrings in DLLs on Sun, 03 Jun 2007 10:13:27 GMT]]></title><description><![CDATA[<p>Ich habe mal ne kurze Frage zu Dlls. (ums gleich zu sagen ich habe das tutorial gelesen !).</p>
<p>(1.)<br />
Kann ich <strong>in</strong> den DLLs grundsätzlich keine AnsiStrings verwenden wenn ich die Weitergabe der MEMMGR.LIB und BORLNDMM.DLL vermeiden möchte, oder bezieht sich das ausschließlich auf die <strong>Übergabe</strong> von AnsiStrings in Funktionsparametern ?</p>
<p>(2.)<br />
Vorausgesetzt ich kann innerhalb der DLL AnsiStrings verwenden:<br />
Wenn ich einer Funktion in einer DLL eine Struktur übergeben möchte die AnsiStrings enthält, kann ich dann das Problem vermeiden in dem ich nur einen Zeiger auf diese Strukur übergebe ?</p>
<p>Mfg Mav</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1297600</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1297600</guid><dc:creator><![CDATA[Mav80]]></dc:creator><pubDate>Sun, 03 Jun 2007 10:13:27 GMT</pubDate></item><item><title><![CDATA[Reply to AnsiStrings in DLLs on Sun, 03 Jun 2007 10:42:29 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Du must Unterscheiden zwischen dem Interface einer DLL das Symbole nach außen hin zugreifbar macht und der Implementation der DLL. In der Implementation kannst du grundsätzlich alles benutzten.<br />
So bezieht sich der Hinweis auf AnsiString auch nur auf das Interface. Und wie ganz zum Schluß des Hinweises steht brauchst du die DLLs auch nur wenn du im DLL-Projekt die Option Projekt/Optionen/Linker/Dyn. RTL verwenden deaktivierst. Dann kaommst du aber auch nicht um die zusätzlichen DLLs herum.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1297619</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1297619</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sun, 03 Jun 2007 10:42:29 GMT</pubDate></item><item><title><![CDATA[Reply to AnsiStrings in DLLs on Sun, 03 Jun 2007 11:33:14 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Wenn die dlls auch außerhalb der Borland-Builder Umgebung genutzt werden sollen bleibt dir ohnehin nichts anderes übrig als auf VCL-spezifische Dinge zu verzichten. Ich nehme für die Schnittstelle im Allgemeinen nur POds (also auch keine STL). Da kann dann eigentlich nichts schief gehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1297649</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1297649</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Sun, 03 Jun 2007 11:33:14 GMT</pubDate></item><item><title><![CDATA[Reply to AnsiStrings in DLLs on Sun, 03 Jun 2007 14:01:38 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/1387">@Braunstein</a>:<br />
mit außerhalb meinst Du jetzt ne andere IDE bzw. andere Sprache? Oder wenn die dll von Programmen auf Rechnern genutzt wird auf denen der CBuilder nicht installiert ist?</p>
<p>Und: was sind Pods?</p>
<p>Und nochmal die Frage: Globale Variablen sind ja sowohl in der dll als auch im aufrufenden Programm bekannt. Kann ich also nicht das AnsiString Problem lösen in dem ich einfach einen Zeiger auf AnsiString übergebe? Oder habe ich da was nicht verstanden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1297767</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1297767</guid><dc:creator><![CDATA[Mav80]]></dc:creator><pubDate>Sun, 03 Jun 2007 14:01:38 GMT</pubDate></item><item><title><![CDATA[Reply to AnsiStrings in DLLs on Mon, 04 Jun 2007 08:49:58 GMT]]></title><description><![CDATA[<p>Ich meinte, wenn du deine dll von einen Programm nutzen willst welches auf einen anderen Compiler erzeugt wurde (evtl auch andere Sprache). Da kennt man evtl. die VCL nicht. Das kann auch verschiedenen Versionen des BCB betreffen. Falls z.Bsp. die Implementation von VCL-Klassen geändert wurde bekommst du evtl. Probleme.</p>
<p>POD - plain old Data<br />
Das sind die alten Typen, die auch C schon kennt. Sowas wie int, double, char, char* etc. sowie structs und classes, die nur PODs enthalten (kein Konstruktor, Destruktor etc.).</p>
<p>Du könntest natürlich auch einen Zeiger auf AnsiString nutzen. Das löst aber das problem nicht. Nimm lieber char* bei dll-Schnittstellen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1298243</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1298243</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Mon, 04 Jun 2007 08:49:58 GMT</pubDate></item></channel></rss>