Originariamente inviato da emi81

Non capisco cosa possa essere..
Sembra come che la dlg.DoModal() apra un file e non lo chiuda, e quando voglio andare io a chiudere un altro file, mi da errore.. ma mi smebra una cosa un po surreale..
La funzione DoModal() della classe CFileDialog non apre il file; una volta ottenuto il path con dlg.GetPathName(), il file va aperto esplicitamente con fopen ( ma ti consiglio di usare la classe CStdioFile per la gestione dei file in MFC ).

Sembra che l'errore sia dovuto al fatto che tenti di chiudere un file che non è mai stato aperto.