<?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[Bibliotheken]]></title><description><![CDATA[<p>Hallo</p>
<p>Ich hatte schon einmal einen ähnlichen Thread gestartet und auch Hilfe bekommen, aber nun hängt es mal wieder. Ich wollte fragen, ob irgendjemand hier ein Tutorial für das Erstellen eigener Bibliotheken kennt, welches dann auch den Umgang danit erklärt.</p>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/147077/bibliotheken</link><generator>RSS for Node</generator><lastBuildDate>Sat, 18 Jul 2026 04:52:57 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/147077.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 13 May 2006 16:36:17 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Bibliotheken on Sat, 13 May 2006 16:36:17 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Ich hatte schon einmal einen ähnlichen Thread gestartet und auch Hilfe bekommen, aber nun hängt es mal wieder. Ich wollte fragen, ob irgendjemand hier ein Tutorial für das Erstellen eigener Bibliotheken kennt, welches dann auch den Umgang danit erklärt.</p>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1057164</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1057164</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Sat, 13 May 2006 16:36:17 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Sat, 13 May 2006 17:14:28 GMT]]></title><description><![CDATA[<p>meinst du eine DLL?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1057180</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1057180</guid><dc:creator><![CDATA[Morides]]></dc:creator><pubDate>Sat, 13 May 2006 17:14:28 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Sat, 13 May 2006 18:31:39 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>von mir aus auch dll. Mich würde dll und statische Bibliothek interessieren.</p>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1057217</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1057217</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Sat, 13 May 2006 18:31:39 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Sun, 14 May 2006 11:19:18 GMT]]></title><description><![CDATA[<p><a href="http://www.resourcecode.de/view.php?id=776" rel="nofollow">http://www.resourcecode.de/view.php?id=776</a><br />
<a href="http://www.se.fh-heilbronn.de/usefulstuff/VCPLUS6/kap17.htm" rel="nofollow">http://www.se.fh-heilbronn.de/usefulstuff/VCPLUS6/kap17.htm</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1057494</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1057494</guid><dc:creator><![CDATA[guenni81]]></dc:creator><pubDate>Sun, 14 May 2006 11:19:18 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Sun, 14 May 2006 11:26:09 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Vielen Dank.</p>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1057496</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1057496</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Sun, 14 May 2006 11:26:09 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Mon, 15 May 2006 14:18:18 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Ich glaube, ich bin echt zu blöd. Ich habe nun genau nach dieser Methode <a href="http://www.resourcecode.de/view.php?id=776" rel="nofollow">http://www.resourcecode.de/view.php?id=776</a> egearbeitet und bekomme immer eine Warnung und 3 Fehlermeldungen:</p>
<p>Warnung:</p>
<pre><code>C4091 'keyword' : ignored on left of 'type' when no variable is
</code></pre>
<p>declared</p>
<p>Fehler:</p>
<blockquote>
<p>Error 1 error LNK2019: unresolved external symbol &quot;int __cdecl Get(struct STRUKTUR)&quot; (?Get@@YAHUSTRUKTUR@@@Z) referenced in function _main check.obj<br />
Error 2 error LNK2019: unresolved external symbol &quot;void __cdecl Set(struct STRUKTUR &amp;,int)&quot; (?Set@@YAXAAUSTRUKTUR@@H@Z) referenced in function _main check.obj<br />
Error 3 fatal error LNK1120: 2 unresolved externals C:\Dokumente und Einstellungen\The Checker\Eigene Dateien\Visual Studio 2005\Projects\check\Debug\check.exe 1</p>
</blockquote>
<p>Kann mir jemand helfen? Ich glaube, dass ich gerade mal wieder völlig auf dem Schlauch stehe.</p>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1058193</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1058193</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Mon, 15 May 2006 14:18:18 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Mon, 15 May 2006 15:09:01 GMT]]></title><description><![CDATA[<p>Hast du die Lib Datei der DLL Datei bei dem Projekt mitgelinkt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1058253</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1058253</guid><dc:creator><![CDATA[guenni81]]></dc:creator><pubDate>Mon, 15 May 2006 15:09:01 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Mon, 15 May 2006 15:16:37 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>In dem Artikel steht doch gar nichts von einer lib-Datei, also habe ich auch keine gelinkt. Wird diese zusammen mit der dll erstellt, oder muss ich diese noch extra erstellen? Ich habe von diesem Thema wirklioch gar keine Ahnung und es ist mir schon etwas peinlich, wie ich mich anstelle, aber ich hoffe, dass ich es bald, mit eurer Hilfe, habe.</p>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1058264</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1058264</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Mon, 15 May 2006 15:16:37 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Mon, 15 May 2006 16:08:38 GMT]]></title><description><![CDATA[<p>Die Lib Datei wird mit der DLL Datei erstellt und liegt im gleichen Verzeichnis deiner DLL Datei. Diese musst du dann bei deinem Linker eintragen...<br />
Keine Panik, es ist noch kein Meister vom Himmel gefallen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1058304</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1058304</guid><dc:creator><![CDATA[guenni81]]></dc:creator><pubDate>Mon, 15 May 2006 16:08:38 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Mon, 15 May 2006 18:13:40 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich habe mich wie chrische5 gerade eben auch anhand dieses Beispiels <a href="http://www.resourcecode.de/view.php?id=776" rel="nofollow">http://www.resourcecode.de/view.php?id=776</a> an das Thema dlls gewagt. Hatte auch den selben Fehler wie chrische5, habs aber nun mit</p>
<pre><code class="language-cpp">#pragma comment(lib,&quot;dlltest.lib&quot;)
</code></pre>
<p>hinbekommen.</p>
<p>Ok, es funktioniert nun alles, nur wundere ich mich etwas über die Handhabung der DLL. Wieso muss ich denn die .h-Datei der DLL in meinem Testprojekt nochmals inkludieren? Ist dann in der DLL quasi nur die cpp-Datei enthalten???<br />
Dadurch verliert die DLL ja ihren Sinn des Versteckens von Code, wenn der Anwender alle Funktionsdefinitionen sieht. (Dort könnten ja auch Funktionen ohne __declspec(dllexport) stehen)</p>
<p>Ich glaube ich habe das Handling von dlls noch nicht ganz verstanden, kennt jemand noch ein gutes Tutorial dazu? (von denen die guenni81 vorgeschlagen hat finde ich das erste ziemlich mies, das 2. ist mir zu ausführlich und zu speziell, das fängt gleich mit MFC-dlls an...)</p>
<p>Gruß Brainiac</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1058388</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1058388</guid><dc:creator><![CDATA[Brainiac]]></dc:creator><pubDate>Mon, 15 May 2006 18:13:40 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Mon, 15 May 2006 20:37:04 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/9357">@Brainiac</a><br />
Du kannst unter <a href="http://www.codeproject.com" rel="nofollow">www.codeproject.com</a> noch nachschauen. Es gibt noch eine zweite Möglichkeit eine DLL Datei zu laden. Hier entfällt dann das einbinden der Header Datei. Das laden der DLL geht damm mit AfxLoadLibrary von statten.<br />
<a href="http://www.codeproject.com/dll/" rel="nofollow">http://www.codeproject.com/dll/</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1058486</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1058486</guid><dc:creator><![CDATA[guenni81]]></dc:creator><pubDate>Mon, 15 May 2006 20:37:04 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Tue, 16 May 2006 12:25:24 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Ich würde gerne noch wissen, wie ich verschieden Klassen zu einer dll &quot;vereinen&quot; kann. Wenn ich das richtig verstanden habe, gibt es immer eine Header und eine Source Datei. Ich habe die Klassen nun aber in jeweils eingenen Dateien. Kann man diese dann einfach dem Projekt hinzufügen?</p>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1058847</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1058847</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 16 May 2006 12:25:24 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Tue, 16 May 2006 14:35:19 GMT]]></title><description><![CDATA[<p>Du kannst mehrere Header und Source Dateien deiner DLL Datei /Projekt hinzufügen, dies ist kein Problem. Beim Kompilieren am Schluss wird alles in diese DLL Datei gepackt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1058957</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1058957</guid><dc:creator><![CDATA[guenni81]]></dc:creator><pubDate>Tue, 16 May 2006 14:35:19 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Tue, 16 May 2006 17:23:37 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Aber ich muss die zusätzlichen Headerdateien doch in der dlltest.h einbinden, oder? Wenn ich dies mache, muss ich, wenn ich die dll benutze dann auch die zusätzlichen Headerdateien mit zu meinen Projekt nehmen, weil er sonst die Header ja nicht öffnen kann. Stimmt das?</p>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1059057</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1059057</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 16 May 2006 17:23:37 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Tue, 16 May 2006 21:57:22 GMT]]></title><description><![CDATA[<p>Du musst die headerdateien die du der dll datei hinzugefügt hast nirgendswo in der DLL Datei einbinden wenn du diese dort nicht benötigst.<br />
In der EXE Datei musst du die headerdateien der DLL Datei einbinden, damit dieser die Klassen kennt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1059190</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1059190</guid><dc:creator><![CDATA[guenni81]]></dc:creator><pubDate>Tue, 16 May 2006 21:57:22 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Wed, 17 May 2006 10:45:35 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Da ich mir nicht sicher bin, ob ich jetzt totalen Mist mache, zeige ich mal meine Arbeitsschritte:</p>
<p>1. neues Projekt (dll) mit dem Namen dlltest<br />
2. es wird eine dlltest.h und eine dlltest.cpp Datei erzeugt<br />
2. hinzufügen von einer Header- und einer Sourcedatei einer Klasse (Name: Logfile.h und Logfile.cpp<br />
3. dann kompilieren<br />
4. neues Testprojekt anlegen<br />
5. dlltest.h hinzufügen und inklidieren<br />
6. dlltest.lib linken<br />
7. wenn ich jetzt eine Instanz von Logfile anlegen will, dann meckert er immer, dass er den Bezeichneer nicht kennt.</p>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1059443</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1059443</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Wed, 17 May 2006 10:45:35 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Wed, 17 May 2006 11:54:24 GMT]]></title><description><![CDATA[<p>Ist so aber korrekt.<br />
Wie sieht den die Klassendeklaration von der Logfile Klasse aus?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1059494</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1059494</guid><dc:creator><![CDATA[guenni81]]></dc:creator><pubDate>Wed, 17 May 2006 11:54:24 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Wed, 17 May 2006 16:58:07 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Also ich habe jetzt noch einmal rumprobiert und musste feststellen, dass wenn ich ein dll Projekt erstelle keine Headerdatei generiert wird. Dann habe ich also eine Header und eine Sourcedsatei mit den Namen dlltest.h und dlltest.ccp. Ich füge diese also dem Projekt hinzu. Dann habe ich probiert eine kleine Klasse Test zu schreiben, welche nur etwas auf dem Bildschirm ausgibt. Die Headerdatei von Test muss ich nun nicht in dlltest.h inkludieren. Das bedeutet doch aber, dass in dlltest.h nichts steht. Zu was brauche ich die Datei dann überhaupt? Wenn ich die Test.h in der dlltest.h inkludieren muss, habe ich ja immer das Problem, dass wenn ich die dlltest.h in mein Projekt inkludiere er dann natürlich die Test.h nicht findet.<br />
Es tut mir echt Leid, aber ich kapiere es wirklich nicht.</p>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1059725</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1059725</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Wed, 17 May 2006 16:58:07 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Wed, 17 May 2006 19:21:24 GMT]]></title><description><![CDATA[<p>Du erstellst ein DLL Projekt (in deinem Fall dlltest). Hier fügst du die benötigten Klassen die du später in dieser DLL Datei haben willst dem DLL Projekt hinzu (nicht includieren, sondern die Dateien dem Projekt hinzufügen). Hier musst du beachten das die Klassen mit dem Wörtchen AFX_EXT_CLASS oder __declspec(dllexport) deklarierst.<br />
Bei MFC Dll Dateien musst du die erste Variante nehmen.<br />
Bsp.</p>
<pre><code class="language-cpp">class AFX_EXT_CLASS Irgendwas : public CObject
{};
</code></pre>
<p>Nun kannst du dein Projekt erstellen und und die header Datei aus dem DLL Projekt einbinden. Dann noch die Lib Datei mitlinken und das wars...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1059816</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1059816</guid><dc:creator><![CDATA[guenni81]]></dc:creator><pubDate>Wed, 17 May 2006 19:21:24 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Thu, 18 May 2006 10:36:13 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Das bedeutet also, dass die dlltest.h, die ich neu hinzugefügz habe komplett leer ist? Ich werde das nachher mal probieren.</p>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1060025</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1060025</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Thu, 18 May 2006 10:36:13 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Thu, 18 May 2006 11:08:32 GMT]]></title><description><![CDATA[<p>chrische5 schrieb:</p>
<blockquote>
<p>Hallo</p>
<p>Das bedeutet also, dass die dlltest.h, die ich neu hinzugefügz habe komplett leer ist? Ich werde das nachher mal probieren.</p>
<p>chrische</p>
</blockquote>
<p>Bei der header und source datei die automatisch erstellt werden beim projekt brauchst du nix zu ändern und kannst diese gerne ignorieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1060046</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1060046</guid><dc:creator><![CDATA[guenni81]]></dc:creator><pubDate>Thu, 18 May 2006 11:08:32 GMT</pubDate></item><item><title><![CDATA[Reply to Bibliotheken on Thu, 18 May 2006 11:50:18 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Weil es immer noch nicht klappt hier mal die Dateien:</p>
<p>Dlltest.h und dlltest.cpp sind komplett leer. Wenn ich ein dll-Projekt starte, wird keine Headerdatei erstellt, also erstell ich immer ein Projekt und lösche alles aus der cpp-Datei. Vielleicht ist das ja das Problem.</p>
<p>Test.h:</p>
<pre><code class="language-cpp">#pragma once

class __declspec(dllexport) Test
{
public:
	Test(void);
	~Test(void);
	void out(void);
};
</code></pre>
<p>Test.cpp:</p>
<pre><code class="language-cpp">#include &quot;StdAfx.h&quot;
#include &quot;Test.h&quot;
#include &lt;iostream&gt;

Test::Test(void)
{
}

Test::~Test(void)
{
}

void Test::out(void)
{
	std::cout&lt;&lt;&quot;Hallo&quot;;
}
</code></pre>
<p>Diese Dateien habe ich zum Projekt dlltest hinzugefügt. Nun kompiliere ich das Projekt und es entsteht eine dlltest.dll und eine dlltest.lib</p>
<p>Nun das Projekt mit dem ich die Dll prüfe. Ich nenne es checkdll</p>
<p>Checkdll.cpp:</p>
<pre><code class="language-cpp">#include &quot;stdafx.h&quot;

#pragma comment(lib,&quot;dlltest.lib&quot;)

#include &quot;dlltest.h&quot;

int _tmain(int argc, _TCHAR* argv[])
{
	Test Hallo;
	return 0;
}
</code></pre>
<p>Er findet aber die Klasse Test nicht. Ich habe zu checkdll dlltest hinzugefügt und ich habe dlltest.dll zum Projekt hinzugefügt.<br />
Vielen Dank für Eure (deine) Geduld.</p>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1060083</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1060083</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Thu, 18 May 2006 11:50:18 GMT</pubDate></item></channel></rss>