<?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[CWnd* über COM]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ch habe eine Ausführbare Hauptanwendung welche eine von mir geschriebene COM dll einbindet und über ein Interface Daten austauscht.</p>
<p>Ich möchte gerne den CWnd Pointer meiner Rahmenanwendung über eine Interface Funktion an die COM dll übergeben.</p>
<pre><code class="language-cpp">HRESULT GetMainWindow([out] CWnd* mainWindow);
</code></pre>
<p>Da motzt der midl compiler aber.</p>
<p>Wie könnte denn so was gehen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/146850/cwnd-über-com</link><generator>RSS for Node</generator><lastBuildDate>Fri, 17 Jul 2026 18:54:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/146850.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 11 May 2006 13:44:30 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to CWnd* über COM on Thu, 11 May 2006 13:44:30 GMT]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ch habe eine Ausführbare Hauptanwendung welche eine von mir geschriebene COM dll einbindet und über ein Interface Daten austauscht.</p>
<p>Ich möchte gerne den CWnd Pointer meiner Rahmenanwendung über eine Interface Funktion an die COM dll übergeben.</p>
<pre><code class="language-cpp">HRESULT GetMainWindow([out] CWnd* mainWindow);
</code></pre>
<p>Da motzt der midl compiler aber.</p>
<p>Wie könnte denn so was gehen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1055654</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1055654</guid><dc:creator><![CDATA[souso20]]></dc:creator><pubDate>Thu, 11 May 2006 13:44:30 GMT</pubDate></item><item><title><![CDATA[Reply to CWnd* über COM on Thu, 11 May 2006 14:33:12 GMT]]></title><description><![CDATA[<p>MFC-Klassen per COM austauschen würde ich nicht machen. IDL erlaubt zwar die Definition von Datentypen aber Klassen oder Zeiger auf Klassen würde ich nicht damit austauschen, da IDL ja eine Schnittstellensprache ist und nicht jeder der COM kennt auch die MFC-Klassen kennt ( z.B. VisualBasic ).</p>
<p>Du kannst z.B. das Fensterhandle des CWnd - Objektes austauschen. Dies erhälst du mit CWnd::GetSafeHWnd() zurück. Aus einem HWND - Handle kannst du mit CWnd::FromHandle() oder CWnd::FromHandlePermanent() wieder das entsprechende CWnd* - Objekt ermitteln.</p>
<pre><code class="language-cpp">HRESULT GetMainWindow([out] HWND* mainWindow);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1055706</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1055706</guid><dc:creator><![CDATA[tvdog]]></dc:creator><pubDate>Thu, 11 May 2006 14:33:12 GMT</pubDate></item></channel></rss>