<?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[Com-Klasse bzw. Objekt in dll]]></title><description><![CDATA[<p>Hi Leute,</p>
<p>ich hab mir ne ganz normale Extension-Dll geschreiben.<br />
Nun muss ich aber noch eine oder zwei Com-Klasse da mit rein packen, damit ich die dll gut auch in anderen Projekten nutzen kann. Will einen COM-Sever einbauen der mir über Connectionpoints dann die jeweiligen apps an meiner dll anmeldet. So was muss ich alles in meine Dll reinpacken um solche Klassen schreiben zu können? Hab mir mal ein ATL-Projekt mit de Wizard generiert. Hat auch gut geklappt. Aber das ist nun eine extra dll und ich will keine zweite, sondern alles in einer. Das ganze com-Zeug per Hand zu schreiben ist auch blöd. Also wie kannich das ganze nun <a href="http://anstellen.Am" rel="nofollow">anstellen.Am</a> besten waäre natürlich das Ding vom Wizard zu kopieren aber ich glaube das geht nicht so einfach.</p>
<p>Gruß,</p>
<p>Stalin</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/49326/com-klasse-bzw-objekt-in-dll</link><generator>RSS for Node</generator><lastBuildDate>Wed, 24 Jun 2026 17:11:27 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/49326.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 18 Sep 2003 08:37:28 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Com-Klasse bzw. Objekt in dll on Thu, 18 Sep 2003 08:37:28 GMT]]></title><description><![CDATA[<p>Hi Leute,</p>
<p>ich hab mir ne ganz normale Extension-Dll geschreiben.<br />
Nun muss ich aber noch eine oder zwei Com-Klasse da mit rein packen, damit ich die dll gut auch in anderen Projekten nutzen kann. Will einen COM-Sever einbauen der mir über Connectionpoints dann die jeweiligen apps an meiner dll anmeldet. So was muss ich alles in meine Dll reinpacken um solche Klassen schreiben zu können? Hab mir mal ein ATL-Projekt mit de Wizard generiert. Hat auch gut geklappt. Aber das ist nun eine extra dll und ich will keine zweite, sondern alles in einer. Das ganze com-Zeug per Hand zu schreiben ist auch blöd. Also wie kannich das ganze nun <a href="http://anstellen.Am" rel="nofollow">anstellen.Am</a> besten waäre natürlich das Ding vom Wizard zu kopieren aber ich glaube das geht nicht so einfach.</p>
<p>Gruß,</p>
<p>Stalin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/355915</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/355915</guid><dc:creator><![CDATA[Stalin]]></dc:creator><pubDate>Thu, 18 Sep 2003 08:37:28 GMT</pubDate></item><item><title><![CDATA[Reply to Com-Klasse bzw. Objekt in dll on Thu, 18 Sep 2003 19:07:54 GMT]]></title><description><![CDATA[<p>Womit willst du das COM-Objekt den schreiben? ATL ( <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> ) oder MFC ( <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> )?</p>
<p>&quot;Im Prinzip&quot; mußt dein DLL nur drei Funktionen implementieren:<br />
DllRegiserServer - CoClasses registrieren<br />
DllUnregisterServer - CoClasses deregistrieren<br />
GetClassObject - Class Factory zurückliefern</p>
<p>Dann natürlich die Class Factory selbst, und die CoClasses....</p>
]]></description><link>https://www.c-plusplus.net/forum/post/356372</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/356372</guid><dc:creator><![CDATA[peterchen]]></dc:creator><pubDate>Thu, 18 Sep 2003 19:07:54 GMT</pubDate></item><item><title><![CDATA[Reply to Com-Klasse bzw. Objekt in dll on Thu, 18 Sep 2003 21:33:11 GMT]]></title><description><![CDATA[<p>peterchen schrieb:</p>
<blockquote>
<p>&quot;Im Prinzip&quot; mußt dein DLL nur drei Funktionen implementieren:</p>
</blockquote>
<p>4 Funktionen: Auf DllCanUnloadNow würde ich auf gar keinen Fall verzichten wollen, dann schon eher auf DllRegisterServer/ DllUnregisterServer.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/356439</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/356439</guid><dc:creator><![CDATA[-King-]]></dc:creator><pubDate>Thu, 18 Sep 2003 21:33:11 GMT</pubDate></item><item><title><![CDATA[Reply to Com-Klasse bzw. Objekt in dll on Fri, 19 Sep 2003 06:19:11 GMT]]></title><description><![CDATA[<p>ups vergessen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
<p>Auf register/unregister und CanUnloadNow kann man problemlos verzichten, wenn man keine Instanzierung durch CoCreateInstance braucht, sodnern das DLL selbst fragt.</p>
<p>Wahrscheinlich ist's das beste eine neues Projekt zu erstellen, und &quot;beides&quot; reinzumischen. Kommt aber drauf an was Stalin nun für die COM's verwenden will.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/356515</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/356515</guid><dc:creator><![CDATA[peterchen]]></dc:creator><pubDate>Fri, 19 Sep 2003 06:19:11 GMT</pubDate></item><item><title><![CDATA[Reply to Com-Klasse bzw. Objekt in dll on Mon, 29 Sep 2003 10:05:11 GMT]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>war im Urlaub und bin nun wieder da.<br />
Eigentlich ist es mir egal. hab bis jetzt halt immer ein ATL-Com Project gemacht zum testen. Also wäre mir das lieber. Nun erstellt mir der Wizard halt immer die ganzen dateien mit *.idl, *.rgs usw. Muss ich dass dann alles von Hand schreiben? Wie kann ich ein makefile schreiben um die bauen zu können so mit midl-compiler usw, da ich wenn es geht alles in der Konsole bauen möchte und auf das Studio verzichten möchte...<br />
Also habt ihr ne Idee?</p>
<p>Gruß,</p>
<p>Stalin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/362527</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/362527</guid><dc:creator><![CDATA[Stalin]]></dc:creator><pubDate>Mon, 29 Sep 2003 10:05:11 GMT</pubDate></item><item><title><![CDATA[Reply to Com-Klasse bzw. Objekt in dll on Mon, 29 Sep 2003 15:35:30 GMT]]></title><description><![CDATA[<p>So hab jetzt was probiert und es compiliert immerhin. Aber jetzt bekomm ich immer diesen Linkfehler:</p>
<pre><code>mfcs42d.lib(dllmodul.obj) : error LNK2005: _DllMain@12 bereits in main.obj defin
iert
mfcs42d.lib(dllmodul.obj) : warning LNK4006: _DllMain@12 bereits in main.obj def
iniert; zweite Definition wird ignoriert
   Bibliothek C:\Ewl\dlib\WIN32\bphone.lib und Objekt C:\Ewl\dlib\WIN32\bphone.e
</code></pre>
<p>Woran kann das liegen? ich alles eingebunden was ich brauch aber so einen Fehler hatte ich noch nie. Kann mir jemand helfen?? <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="😕"
    /> <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>PS: main.obj ist von mir und dort liegt dllmain und das zeug für die Comklasse wie dllregisterserver usw. dllmodul.obj ist nicht von mir...</p>
<p>Gruß,</p>
<p>Stalin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/362837</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/362837</guid><dc:creator><![CDATA[Stalin]]></dc:creator><pubDate>Mon, 29 Sep 2003 15:35:30 GMT</pubDate></item><item><title><![CDATA[Reply to Com-Klasse bzw. Objekt in dll on Mon, 29 Sep 2003 21:23:49 GMT]]></title><description><![CDATA[<p>Die DllMain ist in den MFC-Bibliotheken für MFFC-DLL#s bereits implementiert, du solltest als okeine zweite iMplementaiton anbieten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/363076</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/363076</guid><dc:creator><![CDATA[peterchen]]></dc:creator><pubDate>Mon, 29 Sep 2003 21:23:49 GMT</pubDate></item><item><title><![CDATA[Reply to Com-Klasse bzw. Objekt in dll on Tue, 30 Sep 2003 06:53:03 GMT]]></title><description><![CDATA[<p>Aber wieso denn nicht???<br />
Ich hab nur folgendes drin stehen:</p>
<pre><code class="language-cpp">extern &quot;C&quot; BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID)
{
	if(dwReason == DLL_PROCESS_ATTACH)
	{
		aBaseDLL.hInst = hInstance;
		_Module.Init(ObjectMap, hInstance, &amp;LIBID_COMSERVRLib);
		DisableThreadLibraryCalls(hInstance);
	}
	return TRUE;
}
</code></pre>
<p>bevor ich das com-Zeug drin hatte hat es auch funktioniert...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/363141</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/363141</guid><dc:creator><![CDATA[Stalin]]></dc:creator><pubDate>Tue, 30 Sep 2003 06:53:03 GMT</pubDate></item></channel></rss>