o.O AfxGetMainWnd liefert keinen Zeiger!
-
Irgendwas stimmt hier nicht. Normal sollte das immer gehen ... also ... hab ne statische Memberfunktion eines Hauptdialogs. Darin will ich auf die Attribute der Klasse aber zugreifen können. D.h. hab ich mir mit AfxGetMainWnd nen Zeiger auf das Fenster geholt ... wenn ich den jetzt mit dynamic_cast zum Zeiger aufs Hauptdialogfeld caste, ist die Überprüfung auf NULL erfolgreich?!
Jemand ne Idee?
-
Also du hast eine Dialoganwendung erstellt und alles in der App Klasse so gelassen, wie es ist? Hast du Runtime Check oder wie das heisst, aktiviert? Es gibt da so eine Option, wo man einstellen kann, ob man diese Informationen über die ursprüngliche Klasse im Code haben will oder nicht. Wenn du es deaktiviert hast, dann funktioniert der dynamic_cast nicht.
Grüssli
-
Hmm doch sollte alles da sein ... bin gerade die Möglichkeit am überprüfen, das es daran liegt, das der Dialog in nem anderen Thread läuft wie die Funktion ... wenn es das ist hab ich den Fehler ... ansonsten hab ich ka

-
RTTI eingeschaltet?
-
Dir muss klar sein, dass jeder Thread der MFC, also jedes CWinThread Objekt sein eigenes Main Wnd hat!
Fenster sind threadafin und die MFC richtet sich danach!BTW: CWinApp ist von CWinThread abgeleitet!
-
Das ist ja der Grund, warum ich mir extra nen void* als Parameter übergeben lasse, wo ich dann reinpacken kann, was ich will. Nur ist da momentan noch nen Fehler mit dem this-Pointer drin ... naja werds sehen ...
-
Verwende niemals CWnd Pointer über Threadgrenzen hinweg, das geht in die Hose.
Window Handles gehen OK, aber niemals CWnd's.
-
I know i know .. ist auch ne andere Klasse die imo die Probleme mit dem this-Pointer macht ... und die ist nicht von CWnd usw abgeleitet
