L
lg2000
Hallo,
habe mit VC2003 eine dialogbasierte Anwendung geschrieben. Darin laeuft ein Worker-Thread, der in einer seperaten Klasse CCounter realisiert ist. Beim Beenden der Anwendung ueber das X oder das Systemmenu sollen sowohl der Thread als auch die Anwendung korrekt beendet werden.
Die WM_CLOSE Nachricht fange ich in der Dialog-Klasse mittels der OnClose-Methode ab und rufe darin eine Methode der CCounter-Klasse auf, um den Thread ordnungsgemaess zu beenden. Laut System-Ausgabe scheint dies auch korrekt zu funktionieren: "Der Thread '_threadstartex' (0x240) hat mit Code 0 (0x0) geendet."
Leider wird die Anwendung nicht korrekt beendet. Beim Druecken des X verschwindet zwar das Dialogfenster aber die Anwendung scheint immer noch aktiv zu sein. Die Systemmeldung im DevStudio lautet: "Das Programm "[2392] DaysCounter.exe: Systemeigen" wurde mit Code 2 (0x2) beendet." Ausserdem erscheint der entsprechende Prozess im Windows Task-Manager weiterhin.
Wer kann mir helfen?
Gruss lg2000
habe mit VC2003 eine dialogbasierte Anwendung geschrieben. Darin laeuft ein Worker-Thread, der in einer seperaten Klasse CCounter realisiert ist. Beim Beenden der Anwendung ueber das X oder das Systemmenu sollen sowohl der Thread als auch die Anwendung korrekt beendet werden.
Die WM_CLOSE Nachricht fange ich in der Dialog-Klasse mittels der OnClose-Methode ab und rufe darin eine Methode der CCounter-Klasse auf, um den Thread ordnungsgemaess zu beenden. Laut System-Ausgabe scheint dies auch korrekt zu funktionieren: "Der Thread '_threadstartex' (0x240) hat mit Code 0 (0x0) geendet."
Leider wird die Anwendung nicht korrekt beendet. Beim Druecken des X verschwindet zwar das Dialogfenster aber die Anwendung scheint immer noch aktiv zu sein. Die Systemmeldung im DevStudio lautet: "Das Programm "[2392] DaysCounter.exe: Systemeigen" wurde mit Code 2 (0x2) beendet." Ausserdem erscheint der entsprechende Prozess im Windows Task-Manager weiterhin.
Wer kann mir helfen?
Gruss lg2000