Salut,
J'ai un gros bug bien salace dans mon programme quand je le quitte dans certaines conditions.
Je code une appli qui possède 2 fenêtres :
* la fenêtre principale qui est une CFormView
* une fenetre secondaire (une frame splittée en 2 contenant une CView et une CFormView)
Les 2 sont non-modales, jusqu'ici tout va bien.
Le problème survient quand j'ouvre une dialogbox modal (appelé avec DoModal()) liée à la 2ième fenêtre et que je quitte l'appli en fermant la 1ere fenêtre (qui provoque donc la fermeture de l'appli). En effet, le framework detruit les vues et le document mais après, le processus continue après le DoModal() dans un objet qui a été détruit (il survient donc une GPF )
Je ne vois pas trop comment je peux résoudre ce problème :
* attacher la dialogbox à la 1ere fenêtre : c'est laid car la dialogbox apparait suite à un evennement qui survient dans la 2ième fenêtre
* faire des verif avant de tout fermer : impossible, le code reprend toujours après le DoModal()
* fermer à distance la fenêtre ? (avec des evennements ?)
Quel est le moment le plus tôt pour reagir ? Dans le CView:: OnDestroy, le CView:: OnClose ou autre ?
---------------
"Dieu a exploité tous nos complexes d'infériorité, en commençant par notre incapacité de croire à notre propre divinité." - Emil Michel Cioran