<?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[Frage zu CWnd:DestroyWindow]]></title><description><![CDATA[<p>Also wenn ich mir ein Fenster mit CWnd erstelle und dann die Anwendung einfach schließe, sorgt dann die CWnd-Klasse dafür, dass DestroyWindow aufgerufen wird?. Weil bei mir kommen die Warngungen</p>
<blockquote>
<p>Warning: calling DestroyWindow in CWnd::~CWnd; OnDestroy or PostNcDestroy in derived class will not be called.<br />
Warning: calling DestroyWindow in CWnd::~CWnd; OnDestroy or PostNcDestroy in derived class will not be called.</p>
</blockquote>
<p>Ich öffne im Hauptdialog 2 nicht modale Fenster(keine Dialogklasse, eine eigene welche von CWnd erbt).<br />
Wenn ich aber z.B. im Destruktor noch ein Destroy Window mache, gibts nen Fehler.</p>
<p>Ist die Warnung jetzt nur ein Hinweis, dass ich die Methode nicht überschrieben habe und und ich das evtl wollen könnte, oder wird da der Fensterspeicher tatsächlich nicht wieder freigegeben?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/148859/frage-zu-cwnd-destroywindow</link><generator>RSS for Node</generator><lastBuildDate>Wed, 22 Jul 2026 02:18:50 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/148859.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 31 May 2006 08:39:27 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Frage zu CWnd:DestroyWindow on Wed, 31 May 2006 08:39:27 GMT]]></title><description><![CDATA[<p>Also wenn ich mir ein Fenster mit CWnd erstelle und dann die Anwendung einfach schließe, sorgt dann die CWnd-Klasse dafür, dass DestroyWindow aufgerufen wird?. Weil bei mir kommen die Warngungen</p>
<blockquote>
<p>Warning: calling DestroyWindow in CWnd::~CWnd; OnDestroy or PostNcDestroy in derived class will not be called.<br />
Warning: calling DestroyWindow in CWnd::~CWnd; OnDestroy or PostNcDestroy in derived class will not be called.</p>
</blockquote>
<p>Ich öffne im Hauptdialog 2 nicht modale Fenster(keine Dialogklasse, eine eigene welche von CWnd erbt).<br />
Wenn ich aber z.B. im Destruktor noch ein Destroy Window mache, gibts nen Fehler.</p>
<p>Ist die Warnung jetzt nur ein Hinweis, dass ich die Methode nicht überschrieben habe und und ich das evtl wollen könnte, oder wird da der Fensterspeicher tatsächlich nicht wieder freigegeben?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1068569</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1068569</guid><dc:creator><![CDATA[Pellaeon]]></dc:creator><pubDate>Wed, 31 May 2006 08:39:27 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu CWnd:DestroyWindow on Wed, 31 May 2006 09:26:26 GMT]]></title><description><![CDATA[<p>Dein Problem ist, dass ein Objekt zerstört ist, bei dem noch das Fenster existiert.</p>
<p>Egal wie, der normale Weg heißt immer: Erst das Fenster zu zerstören mit DestroyWindow.<br />
Das CWnd::Objekt zerstört sich entweder selbst oder wird eben über den Stack entsorgt.</p>
<p>Wie hast Du denn diese Objekte angelegt? Als member in dem Dialog?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1068607</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1068607</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Wed, 31 May 2006 09:26:26 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu CWnd:DestroyWindow on Wed, 31 May 2006 16:49:44 GMT]]></title><description><![CDATA[<p>Jo genau da<br />
Warum klappt es denn nicht, wenn ich im Destruktor das DestroyWindow aufrufe?</p>
<p>Oder wie kann man sowas am besten machen?<br />
In älteren Projekten habe ich dann angefangen, die CLose nachricht abzufangen, ne Nachricht an das &quot;Elternfenster&quot; zu schicken udn dieses musst dann &quot;per Hand&quot; schließen und dann das Fenster zerstören.<br />
Das ist aber doch ziemlich aufwendig. Da gibts doch sicher einfacherere udn elegantere Methoden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1068977</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1068977</guid><dc:creator><![CDATA[Pellaeon]]></dc:creator><pubDate>Wed, 31 May 2006 16:49:44 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu CWnd:DestroyWindow on Wed, 31 May 2006 17:09:24 GMT]]></title><description><![CDATA[<p>Setz doch mal einen Breakpoint auf den Destruktor von CWnd.<br />
Scheinbar wird vorher das Objekt schon per delete evtl. zerstört.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1068990</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1068990</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Wed, 31 May 2006 17:09:24 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu CWnd:DestroyWindow on Thu, 01 Jun 2006 16:12:21 GMT]]></title><description><![CDATA[<p>Martin Richter schrieb:</p>
<blockquote>
<p>Setz doch mal einen Breakpoint auf den Destruktor von CWnd.<br />
Scheinbar wird vorher das Objekt schon per delete evtl. zerstört.</p>
</blockquote>
<p>Neeeee, daran liegt es sicher nicht. dass das Objekt vorher zerstört wird.<br />
Ich habe eher den Verdacht, dass die Hauptanwendung beim Schließen vorher schon irgendwas da macht.<br />
Wie machen denn andere sowas?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1069701</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1069701</guid><dc:creator><![CDATA[Pellaeon]]></dc:creator><pubDate>Thu, 01 Jun 2006 16:12:21 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu CWnd:DestroyWindow on Fri, 02 Jun 2006 11:13:49 GMT]]></title><description><![CDATA[<p>Aber dieser Trace kommt aus dem Destruktor won CWnd! Das kanst Du in der Source der MFC genau sehen! Dieser Text kommt nur einmal an dieser Stelle vor.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1070024</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1070024</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Fri, 02 Jun 2006 11:13:49 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu CWnd:DestroyWindow on Fri, 02 Jun 2006 16:35:28 GMT]]></title><description><![CDATA[<p>ok, aber mein CWnd ist eine Membervariable in einem Dialog. Es wird also nix dynamisch mit new angelegt. An welcher Stelle soll dann die doppelte Freigabe erfolgen, wenn ich im Destruktor des Dialogs das DestroyWindow aufruf?#</p>
<p>Ma so nebenbei: wie machen dann andere sowas? Werden doch sicher ein paar Leutz hier mal mehrere Fensterklassen benutzen, die auch an geeigneter Stelle freigegeben werden müssen ?!?!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1070191</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1070191</guid><dc:creator><![CDATA[Pellaeon]]></dc:creator><pubDate>Fri, 02 Jun 2006 16:35:28 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu CWnd:DestroyWindow on Sat, 03 Jun 2006 10:00:20 GMT]]></title><description><![CDATA[<p>Ich mache es genauso. Ich habe auch einfach eine Membervariable in der Klasse.<br />
Frage: Wie zerstört sich Dein Dialog? Zersörst Du den evtl. mit delete. Ist der nicht modal und geht aus dem Scope?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1070590</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1070590</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Sat, 03 Jun 2006 10:00:20 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu CWnd:DestroyWindow on Sat, 03 Jun 2006 12:30:53 GMT]]></title><description><![CDATA[<p>Ist eine einfache Dialogfeldanwendung, mit dem Projekt-Assistenten erstellt und diese öffnet halt 2 neue Fenster zur Anzeige von Grafiken.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1070644</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1070644</guid><dc:creator><![CDATA[Pellaeon]]></dc:creator><pubDate>Sat, 03 Jun 2006 12:30:53 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu CWnd:DestroyWindow on Mon, 05 Jun 2006 17:37:22 GMT]]></title><description><![CDATA[<p>Pellaeon schrieb:</p>
<blockquote>
<p>Ist eine einfache Dialogfeldanwendung, mit dem Projekt-Assistenten erstellt und diese öffnet halt 2 neue Fenster zur Anzeige von Grafiken.</p>
</blockquote>
<p>Du schreibst öffnen! Wenn dise Fenster keine Child Windows sind, werden diese beim Schließen des Dialoges nicht zerstört.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1071817</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1071817</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Mon, 05 Jun 2006 17:37:22 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu CWnd:DestroyWindow on Tue, 06 Jun 2006 19:55:01 GMT]]></title><description><![CDATA[<p>jo darum gehts! An welcher Stelle ich die am einfachsten freigeb.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1072787</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072787</guid><dc:creator><![CDATA[Pellaeon_logoff]]></dc:creator><pubDate>Tue, 06 Jun 2006 19:55:01 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu CWnd:DestroyWindow on Wed, 07 Jun 2006 06:03:01 GMT]]></title><description><![CDATA[<p>Wenn es eigene Overlapped Windows sind, solltest Du einen WM_DESTROY Handler bauen und dort DestroyWindow aufrufen.<br />
Aber warum sind diese Fenster Overlapped? Warum sind es keine Child Windows? Naja ist Dein Design.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1072914</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072914</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Wed, 07 Jun 2006 06:03:01 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu CWnd:DestroyWindow on Wed, 07 Jun 2006 11:40:38 GMT]]></title><description><![CDATA[<p>Und wie kann ich Child-Windows machen, ohne das diese auf den Bereich des Elternfensters beschränkt sind?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1073112</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1073112</guid><dc:creator><![CDATA[Pellaeon]]></dc:creator><pubDate>Wed, 07 Jun 2006 11:40:38 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu CWnd:DestroyWindow on Wed, 07 Jun 2006 18:10:17 GMT]]></title><description><![CDATA[<p>Ok! Wenn dies eine Anforderung ist, dann gehen Childwindows nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1073367</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1073367</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Wed, 07 Jun 2006 18:10:17 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu CWnd:DestroyWindow on Thu, 08 Jun 2006 09:57:53 GMT]]></title><description><![CDATA[<p>Also bleibt wohl nur der Weg, sich da ne Kontrollstruktur drumzubauen .... hm schade</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1073717</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1073717</guid><dc:creator><![CDATA[Pellaeon]]></dc:creator><pubDate>Thu, 08 Jun 2006 09:57:53 GMT</pubDate></item></channel></rss>