juhu erfolgreich threading aber immenrnoch ein prob :-\ *bearbeitet*
-
ich habe erfolgreich einen 2ten arbeitsthread zu meinem Hauptthread laufen lassen
ich habe gelesen der die Thread Method soll global oder static sein...
wenn meine methode nun static ist "static UINT TestProc(LPVOID pParam)"
dann kann ich doch gar nicht auf meien members in meiner dlg zugreifen.....was kann man da tun? bzw. wie muss ich voran gehen?
-
satische funktionen können generell nich auf membervariablen zugreifen
warum? lies mal durch was ne statische funktion iszu deinem problem
ich glaub der standardweg läuft so-übergib beim erstellen deines threads das windowhandle deines dialogs als benutzerdefinierten parameter: CreateThread(...,dlg.GetSafeHwnd(),...);
-mach in der threadfunktion aus dem windowhandle einen zeiger auf deine dialogklassetfunc(LPVOID param)
{
DeinDialg *dlg=(DeinDialog*)CWnd::FromHandle((HWND)param);
dlg->m_blah="blah";
}