Program DialogApp je opraven, již se po spuštění neobjevuje "Assertion failed" ani žádné výjimky. Problém spočíval v tom, že když se vytvoří soubor (CFile) a na něj navázaný CArchive, musí se archiv zrušit nebo zavřít (zavolat na něm metodu Close()) dříve než se zavře soubor. Archiv si bufferuje data, a tak po zavření souboru již nemá šanci poslední data do souboru zapsat.
{
CFile soubor("dialogapp.data", CFile::modeRead);
CString jmeno = "";
CArchive arch(&soubor_r, CArchive::Mode::load);
arch >> jmeno;
arch.Close(); // pokud se nezavolá, až bude končit platnost
// proměnné
arch (na konci bloku), tak se bude
// volat destruktor
CArchive, ten se pokusí zapsat
// data do již zavřeného souboru a
to selže
soubor.Close();
} // zde se volá destruktor CArchive