I'm getting an exception thrown for CArchive. This is code that worked in a VS6 (COM) DLL that is being updated to VS8 (VS.NET 2005) and an MFC DLL (removed COM).
Relevant Code:
Code:
CString strName = _T("");
CSequence* pSequence = NULL;
CFile file;
CFileException fe;
CString msg;
// open file
if (!file.Open(strFilePath, CFile::modeRead | CFile::shareDenyWrite, &fe))
{
// Error handling - no file open issues
}
CArchive ar(&file, CArchive::load);
ar >> pSequence; // **EXCEPTION
ar.Close();
file.Close();
Exception happens at the ar >> pSequence line.
For the CSequence class, the constructor with CArchive is a Serialize.
Code:
virtual void Serialize(CArchive& ar);
When it reads the files (created a long time ago, but still working on the older system), it throws an exception:
<filename> contained an unexpected objet.
Any ideas? Thoughts?
Is CArchive compatible with older version of CArchive? I'm guessing that's how those files were created in the first place.