Programmieren - alles kontrollieren 4.934 Themen, 20.613 Beiträge

Visual C++ (6 MFC): Thread soll Editbox füllen....

ExElNeT / 6 Antworten / Flachansicht Nickles

Hi!


Ich habe ein Problem ich möchte in einem Thread eine Berechnung durchführen, die ihre zwischenergebnisse an eine Editbox ausgibt. Nur leider .... wie so oft.... geht es nicht so wie ich es mir dachte!


hier mein code:


UINT CMyThread(LPVOID lpParam)
{
 CTestitDlg* cfg = reinterpret_cast<CTestitDlg*> (lpParam);
 
 for(int i = 0;i<100;i++)
 {  
  Sleep(100);
  CString str;
  str.Format("%d", i); 
  cfg->m_Test = str;


  cfg->UpdateData(FALSE); 
 }


 return 0;
}


void CTestitDlg::OnTest()
{
 // TODO: Add your control notification handler code here
 AfxBeginThread(CMyThread, this);
}


 


Bei UpdateData(FALSE); tritt ein Fehler in der wincore.cpp auf. Wie kann ich den Code umschreiben um eine funktionierende kommunikation zwischen neben und hauptthread herzustellen?


Ich bitte um Hülfe :)

bei Antwort benachrichtigen
ExElNeT thomas woelfer „bei den mfc beispielen sind mehrere dabei die auch threads haben. die sollte man...“
Optionen

Also ich habe einfach die Problemzone mit Lock() und UnLock() eingegrenzt, aber es tritt immernoch der gleiche Fehler auf :(

trotzdem schonmal danke :)

bei Antwort benachrichtigen
das reicht nicht thomas woelfer