{"id":102,"date":"2007-08-18T20:05:15","date_gmt":"2007-08-18T18:05:15","guid":{"rendered":"http:\/\/blog.m-ri.de\/index.php\/2007\/08\/18\/wann-message-reflection-nicht-funktioniert\/"},"modified":"2007-08-18T20:06:29","modified_gmt":"2007-08-18T18:06:29","slug":"wann-message-reflection-nicht-funktioniert","status":"publish","type":"post","link":"http:\/\/blog.m-ri.de\/index.php\/2007\/08\/18\/wann-message-reflection-nicht-funktioniert\/","title":{"rendered":"Wann Message Reflection nicht funktioniert!"},"content":{"rendered":"<p><a href=\"http:\/\/msdn2.microsoft.com\/en-us\/library\/eeah46xd(vs.80).aspx\">TN062: Message Reflection for Windows Controls<\/a> beschreibt die vielen sch\u00f6nen M\u00f6glichkeiten der Message Reflection.<\/p>\n<p>Aber es gibt eine wichtige Voraussetzung, dass da ganze funktioniert:<br \/>\nDas Parent Window muss auch ein Fenster sein, das mit der MFC erzeugt wurde, oder durch die MFC gesubclassed sein.<\/p>\n<p>Die Reflektion geschieht immer nur durch das Parent Fenster. Wenn dort also eine <em>WM_CTLCOLOR <\/em>Nachricht das Parent erreicht, dann wird die Nachricht an das Fenster, dass es gesendet weitergeleitet, wenn es eben \u00fcber einen entsprechenden Reflektion Eintrag f\u00fcr <em>WM_CTLCOLOR <\/em>verf\u00fcgt. Das ganze wird erledigt durch die Funktion <em>CWnd::ReflectLastMessage<\/em>, die die entsprechenden Funktion\u00a0 <em>CWnd::SendChildNotifyLastMsg<\/em> im eigentlichen Control wieder aufruft. Diese Funktion ruft wiederum <em>CWnd::OnChildNotify<\/em> auf, die dann die Reflection Eintr\u00e4ge in der Message Map sucht. Ist das Parent nun kein MFC Fenster kann auch niemand die Nachrichten an das sende Fenster zur\u00fcckleiten.<\/p>\n<p>Hat man also ein Fenster hat, dass durch pure Win32 API Funktionen erzeugt wurde und auch nicht durch die MFC gesubclassed wurde und in diesem Fenster wird ein MFC Fenster als Child erzeugt, dann erreichen dieses Child keine Nachrichten durch die Reflektion.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>TN062: Message Reflection for Windows Controls beschreibt die vielen sch\u00f6nen M\u00f6glichkeiten der Message Reflection. Aber es gibt eine wichtige Voraussetzung, dass da ganze funktioniert: Das Parent Window muss auch ein Fenster sein, das mit der MFC erzeugt wurde, oder durch die MFC gesubclassed sein. Die Reflektion geschieht immer nur durch das Parent Fenster. Wenn dort &hellip; <a href=\"http:\/\/blog.m-ri.de\/index.php\/2007\/08\/18\/wann-message-reflection-nicht-funktioniert\/\" class=\"more-link\"><span class=\"screen-reader-text\">\u201eWann Message Reflection nicht funktioniert!\u201c <\/span>weiterlesen<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[4,3],"tags":[370,73,352],"class_list":["post-102","post","type-post","status-publish","format-standard","hentry","category-mfc","category-programmieren","tag-c","tag-command-routing","tag-mfc"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/posts\/102","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/comments?post=102"}],"version-history":[{"count":0,"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/posts\/102\/revisions"}],"wp:attachment":[{"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/media?parent=102"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/categories?post=102"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/tags?post=102"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}