It helps indeed ;-)... The folowing code is called in a thread in which the void pointer contains a pointer to the parent class. int CwizLoginPage::runProcess (void* pThis) { CwizLoginPage * PPointer = (CwizLoginPage*)pThis; CMainWizard tt = (CMainWizard)PPointer->GetParent(); tt.SetActivePageByID(IDD_WIZARD_CHOOSEMODE); return 0; }