VisualStudio 6 und Vista



  • Achja noch was: Hast Du für VC++ 6.0 das Service Pack 5 und 6 installiert ? Ich hatte mit dem Ding auch schonmal ziemlich unerklärliche Probleme...nach den Updates waren die verschwunden 😉 . Würde aber trotzdem von dem Compiler Abschied nehmen 🕶 .



  • Ich bin nun mit den Debug-Infos durch das Programm bis zu der Stelle gegangen, an der der Fehler auftaucht. Das einzige was mir aufgefallen ist: Bei der Debug-Version haben die Thread-Objekte immer unterschiedliche Heandels (CWinThread.m_hThread). In der Release Verison hat der erste Thread-Objekt vor dem Aufruf von CreateThread den Wert 0 und nachher einen Wert größer Null. Den selben Wert hat das Objekt vor dem zweiten Aufruf. Der erste Thread ist dann schon beendet. Ich weiß nicht, ob das so in Ornung ist, aber das ist bisher das einzige, was mir aufgefallen ist.

    dEUs schrieb:

    Das würde mich sehr wundern. Du sollst in deinem Release-Build Debug-Infos mit reinkompilieren. D.h. vor allem, dass der define _DEBUG nicht gesetzt werden sein darf!


  • Mod

    Also der häufigste Fehler in Bezug auf CWinThread Objekte ist, dass AfxBeginThread aufgerufen wird und der Zeiger danach benutzt wird, ohne das m_bAutoDelete auf FALSE gesetzt wird.

    Zeig mal wie Du den Thread startest und wie Du prüfst, dass der Thread zu Ende geht!


Anmelden zum Antworten